diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2011-07-10 12:05:33 +0200 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2011-07-10 12:05:33 +0200 |
commit | 714324a9a34f0958704e5064251a1f00ed37a372 (patch) | |
tree | e2d9df694d209faa8e665aee2c7cbb645d52a485 /rsa/common.py | |
parent | 57e5d9e1e192d8199917c86eb73e310f8dc88a24 (diff) | |
download | rsa-git-714324a9a34f0958704e5064251a1f00ed37a372.tar.gz |
Lot of refactorings:
- Added PKCS#1 module
- Moved some functionality to common.py
- simplified random number generation
- improved and extended doctests
- added changelog
Diffstat (limited to 'rsa/common.py')
-rw-r--r-- | rsa/common.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/rsa/common.py b/rsa/common.py index b8f7aa6..7c852b6 100644 --- a/rsa/common.py +++ b/rsa/common.py @@ -14,5 +14,18 @@ def bit_size(number): ''' + if number < 0: + raise ValueError('Only nonnegative numbers possible: %s' % number) + + if number == 0: + return 1 + return int(math.ceil(math.log(number, 2))) +def byte_size(number): + """Returns the number of bytes required to hold a specific long number. + + The number of bytes is rounded up. + """ + + return int(math.ceil(bit_size(number) / 8.0)) |