JavaでRSA攻撃を実装しようとしていますが、床関数と天井関数のような数学演算をBigInteger変数に計算する必要があります。math.ceilとmath.floorはdouble変数にのみ適用されることがわかっているので、BigIntegerのfloorとceilを計算できる他の方法を知っていますか?ありがとうございました。
8542 次
2 に答える
2
この質問は意味がありません。floor と ceil は浮動小数点数を整数に丸めます。そして何を推測しますか: BigInteger は整数のみを表すことができます。したがって、丸めは必要ありません。(特に、RSA コンテキストは整数文字を強調します)。
于 2012-04-03T04:35:56.397 に答える
2
BigInteger 値は整数であるため、除算演算の上限と下限が必要であると想定しています。そのためには、代わりにBigDecimalを使用することをお勧めします。divide
別の BigDecimal とMathContextを取るメソッドがあります。MathContext では、丸めモードを上限または下限として指定できます (特に)。
ゼロに丸めることだけが必要な場合は、 も使用できますBigDecimal.divideToIntegralValue
。
于 2012-04-03T04:39:41.133 に答える