summaryrefslogtreecommitdiff
path: root/lib/srp/util.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/srp/util.rb')
-rw-r--r--lib/srp/util.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/srp/util.rb b/lib/srp/util.rb
index efbecaa..577977e 100644
--- a/lib/srp/util.rb
+++ b/lib/srp/util.rb
@@ -66,6 +66,15 @@ d15dc7d7b46154d6b6ce8ef4ad69b15d4982559b297bcf1885c529f566660e5
sha256_str(hashin).hex
end
+ def calculate_u(aa, bb, n)
+ nlen = 2 * ((('%x' % [n]).length * 4 + 7) >> 3)
+ aahex = '%x' % [aa]
+ bbhex = '%x' % [bb]
+ return sha256_str("%x%x" % [aa, bb]).hex
+ hashin = '0' * (nlen - aahex.length) + aahex \
+ + '0' * (nlen - bbhex.length) + bbhex
+ sha256_str(hashin).hex
+ end
end
end