るりまサーチ

最速Rubyリファレンスマニュアル検索!
264件ヒット [1-100件を表示] (0.088秒)

別のキーワード

  1. openssl t61string
  2. asn1 t61string
  3. matrix t
  4. t61string new
  5. fiddle type_size_t

クラス

キーワード

検索結果

<< 1 2 3 > >>

OpenSSL::BN#prime_fasttest?(checks=nil, vtrivdiv=true) -> bool (6133.0)

自身が素数であるなら true を返します。

...自身が素数であるなら true を返します。

vtrivdiv が真である場合には、 Miller-Rabin 法での
判定の前に小さな素数で割ることで素数か否かを
調べます。自身が小さな素数である場合にはこの手順
により素数ではないと誤った...
...nilである場合は OpenSSL が適切な
回数を判断します。

//emlist[][ruby]{
require 'openssl'

# 181 は 「小さな素数」である
OpenSSL
::BN.new("181").prime_fasttest?(nil, true) # => false
OpenSSL
::BN.new("181").prime_fasttest?(nil, false) # => true
//}

@
param checks Miller-Ro...
...bin法の繰り返しの回数
@
param vtrivdiv 真なら小さな素数で割ることでの素数判定を試みます
@
raise OpenSSL::BNError 判定時にエラーが発生
@
see OpenSSL::BN#prime?...

OpenSSL::BN#clear_bit!(n) -> self (6127.0)

自身の n ビット目を0にします。

...自身の n ビット目を0にします。

//emlist[][ruby]{
require 'openssl'

a = OpenSSL::BN.new("129")
a.clear_bit!(0)
a # => 128
//}

@
param n 0にするビットの位置
@
raise OpenSSL::BNError 計算時エラー
@
see OpenSSL::set_bit!...

OpenSSL::BN#lshift!(n) -> self (6127.0)

自身を n ビット左シフトします。 OpenSSL::BN#<<と異なり、破壊的メソッドです。

...す。
OpenSSL
::BN#<<と異なり、破壊的メソッドです。

//emlist[][ruby]{
require 'openssl'

bn = 1.to_bn
bn.lshift!(2) # => #<OpenSSL::BN 4>
bn # => #<OpenSSL::BN 4>
//}

@
param n シフトするビット数
@
raise OpenSSL::BNError 計算時エラー
@
see OpenSSL::BN#<<...

OpenSSL::BN#rshift!(n) -> self (6127.0)

自身を n ビット右シフトします。 [[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。

...[[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。

//emlist[][ruby]{
require 'openssl'

bn = 8.to_bn
bn.rshift!(1) # => #<OpenSSL::BN 4>
bn # => #<OpenSSL::BN 4>
//}

@
param n シフトするビット数
@
raise OpenSSL::BNError 計算時エラー
@
see OpenSSL::BN#>>...

OpenSSL::BN#set_bit!(n) -> self (6127.0)

自身の n ビット目を1にします。

...自身の n ビット目を1にします。

//emlist[][ruby]{
require 'openssl'

a = OpenSSL::BN.new("128")
a.set_bit!(0)
a # => 129
//}

@
param n 1にするビットの位置
@
raise OpenSSL::BNError 計算時エラー
@
see OpenSSL::clear_bit!, OpenSSL::bit_set?...

絞り込み条件を変える

OpenSSL::BN#to_s(base=10) -> String (6127.0)

自身を表す文字列を返します。

...列)

@
param base 文字列への変換方法(基数)
@
raise OpenSSL::BNError 変換に失敗した場合に発生します

//emlist[][ruby]{
require 'openssl'

p 10.to_bn.to_s # => "10"
p (-5).to_bn.to_s # => "-5"

p 0.to_bn.to_s(16) # => "0"
p 9.to_bn.to_s(16) # => "09"
p 10.to_bn.to_s(1...
...> "0A"
p 16.to_bn.to_s(16) # => "10"
p 26.to_bn.to_s(16) # => "1A"
p 256.to_bn.to_s(16) # => "0100"

p 0.to_bn.to_s(2) # => ""
p 6.to_bn.to_s(2) # => "\x06"
p 7.to_bn.to_s(2) # => "\a"

p 0.to_bn.to_s(0) # => "\x00\x00\x00\x00"
p 6.to_bn.to_s(0) # => "\x00\x00\x00\x01\x06"
p 7.to_bn.to_s(0) # =>...
..."\x00\x00\x00\x01\a"
//}

反対に、文字列から OpenSSL::BN クラスのインスタンスを作るには
OpenSSL
::BN.new を用います。

@
see OpenSSL::BN.new...

Integer#to_bn -> OpenSSL::BN (6121.0)

Integer を同じ数を表す OpenSSL::BN のオブジェクトに 変換します。

...Integer を同じ数を表す OpenSSL::BN のオブジェクトに
変換します。

//emlist[][ruby]{
require 'pp'
require 'openssl'

pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}

なお、実装は、以下のようになっています。

//emlist[][ruby]{
clas...
...s Integer
def to_bn
OpenSSL
::BN::new(self)
end
end
//}

@
see OpenSSL::BN.new, OpenSSL::BN#to_i...
...Integer を同じ数を表す OpenSSL::BN のオブジェクトに
変換します。

//emlist[][ruby]{
require 'openssl'

pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}

なお、実装は、以下のようになっています。

//emlist[][ruby]{
class Integer
d...
...ef to_bn
OpenSSL
::BN::new(self)
end
end
//}

@
see OpenSSL::BN.new, OpenSSL::BN#to_i...

OpenSSL::BN#bit_set?(n) -> bool (6121.0)

自身の n ビット目が立っているなら true を返します。

...自身の n ビット目が立っているなら true を返します。

//emlist[][ruby]{
require 'openssl'

OpenSSL
::BN.new("129").bit_set?(0) # => true
OpenSSL
::BN.new("129").bit_set?(1) # => false
//}

@
param n 調べるビットの位置
@
see OpenSSL::set_bit!...

OpenSSL::BN#mask_bits!(n) -> self (6121.0)

自身を下位 n ビットでマスクし、破壊的に変更します。

...きい場合は例外 OpenSSL::BNError
が発生します。

//emlist[][ruby]{
require 'openssl'

bn = 0b1111_1111.to_bn

bn.mask_bits!(8)
p "%b" % bn # => "11111111"

bn.mask_bits!(3)
p "%b" % bn # => "111"
//}

@
param n マスクするビット数
@
raise OpenSSL::BNError 計算時...
<< 1 2 3 > >>