new(str, base=10) -> OpenSSL::BN
[permalink][rdoc][edit]-
文字列を多倍長整数オブジェクト(OpenSSL::BN)を生成します。
base によって変換の基数を決めることができます。 10, 16 が利用可能です。
baseに2を指定すると文字列を big-endian の符号無し整数のバイナリ列とみなして変換します。
また、base に 0 を指定すると、MPIのフォーマットから変換します。 (最初の4byteはbig-endianでデータ長を表わし、その後にそのデータ長のバイト列(big-endian)で数値を表す。最上位ビットが立っていると負数)。
例:
require 'openssl' OpenSSL::BN.new("-241") # => -241 OpenSSL::BN.new("ff00",16) # => 65280 OpenSSL::BN.new("\x81",2) # => 129 OpenSSL::BN.new("\xff\x81",2) # => 65409 OpenSSL::BN.new("\x00\x00\x00\x02\x00\x81", 0) # => 129 OpenSSL::BN.new("\x00\x00\x00\x02\x80\x81", 0) # => -129 OpenSSL::BN.new(1209) # => 1209
- [PARAM] str:
- 整数を表す文字列
- [PARAM] base:
- 文字列から整数に変換するときの基数
- [EXCEPTION] OpenSSL::BNError:
- 変換に失敗した場合に発生します
new(bn) -> OpenSSL::BN
[permalink][rdoc][edit]-
OpenSSL::BN を複製して返します。
- [PARAM] bn:
- 複製する OpenSSL::BN オブジェクト
new(integer) -> OpenSSL::BN
[permalink][rdoc][edit]-
整数オブジェクト(Integer)から多倍長整数オブジェクト (OpenSSL::BN)を生成します。
- [PARAM] integer:
- 整数オブジェクト