How can I measure the time it takes to break a cryptographic algorithm by brute force attack?
8 views (last 30 days)
Show older comments
Daniel
on 30 Jan 2023
Commented: Walter Roberson
on 30 Jan 2023
Now I am developing a modified cryptograpphic algorithm that can enhance the security. Finally when I make analysis I have to measure the strength. Among the security metrics the one is time that takes to breake the code by brute force attack. But I don't have any clue how to measure the time that takes to break the code by brute force attack . Anyone please.
0 Comments
Accepted Answer
Walter Roberson
on 30 Jan 2023
timeit()
However unless you deliberately using a very small key, you would need to estimate the time instead of measuring it.
Algorithms are not always linear time. For example the average time to find some factor of a random integer is much much less than the time to prove that a number is prime, or to do a prime factorization when the number is the product of two large primes. So the mean() of the time to break a cryptography might potentially be considerably less than half of the worst case.
Brute force does not always mean trying all possible keys: it can mean trying all possibilities of something else related to keys (but traditionally it does not extend to techniques such as differential analysis)
2 Comments
Walter Roberson
on 30 Jan 2023
t = timeit(@()YourFunction(AppropriateParameters), 0);
The effect is similar to
start = tic;
YourFunction(AppropriateParameters);
t = toc(start);
except that timeit has ways to try to measure more accurately.
More Answers (0)
See Also
Categories
Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!