![]() ![]() The following aren't bugs, but suggestions: you should probably use pow(c,d,n) rather than (c**d)%n for large numbers the former will be much faster. You want modInverse(e, phi(n)), not modInverse(e, n) see this worked example.Īfter fixing those, it seems to work for me. ![]() (4) You're taking the wrong multiplicative modular inverse. (3) Your alpha should be alpha (otherwise you'll get "96llo, worl5"). (2) You also don't check to see that p != q. Getting a composite will lead to problems. Q = random.choice(primes_range(Low, High))Ĭhar_array.append(encrypt_byte(alpha], e, n)) P = random.choice(primes_range(Low, High)) The code: import fractions, sys, random, math I decided to write a simple RSA encryption implementation in Python, but every time I run it it prints the error Inde圎rror: list out of range when it's decrypting and in find_key. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |