[prev in list] [next in list] [prev in thread] [next in thread]
List: bouncycastle-crypto-dev
Subject: RE: [dev-crypto] bc rsa key gen vs. common rsa key gen
From: "Eckenfels. Bernd" <B.Eckenfels () seeburger ! de>
Date: 2017-06-06 0:48:02
Message-ID: ED12D06EC205E3458FC3E23CD84D4ED501D9E21875 () dedcexch02 ! seeburger ! de
[Download RAW message or body]
Hello,
For one it uses half a bit more keylength and some other safety constraints:
http://grepcode.com/file/repo1.maven.org/maven2/org.bouncycastle/bcprov-jdk15on/1.52/org/bouncycastle/crypto/generators/RSAKeyPairGenerator.java#28
41 int pbitlength = (strength + 1) / 2;
42 int qbitlength = strength - pbitlength;
43 int mindiffbits = strength / 3;
44 int minWeight = strength >> 2;
You might want to tell us why you ask.
Gruss
Bernd
--
http://www.seeburger.com
________________________________________
From: Hérikz Nawarro [herikz.nawarro@gmail.com]
Sent: Monday, June 05, 2017 19:07
To: dev-crypto@bouncycastle.org
Subject: [dev-crypto] bc rsa key gen vs. common rsa key gen
Hello everyone,
Whats the difference between bc rsa key gen (RSAKeyPairGenerator) and
a common a rsa key gen (like below)?
public void keyGen(int nbits){
nb_bits=nbits;
params=new Parameters(this.nb_bits);
BigInteger p = getPrime((params.getNb_bits()/2),params.getPrg());
BigInteger q = getPrime((params.getNb_bits()/2),params.getPrg());
BigInteger n = p.multiply(q);
BigInteger e = new BigInteger("65537");
BigInteger totient =
p.subtract(BigInteger.ONE).multiply((q.subtract(BigInteger.ONE)));
BigInteger d = e.modInverse(totient);
PubKey pk = new PubKey(n,e);
PrivKey sk = new PrivKey(d,p,q);
}
thanks.
SEEBURGER AG Vorstand/SEEBURGER Executive Board:
Sitz der Gesellschaft/Registered Office: Axel Haas, Michael Kleeberg, \
Friedemann Heinz, Dr. Martin Kuntz, Matthias Feßenbecker Edisonstr. 1
D-75015 Bretten Vorsitzende des Aufsichtsrats/Chairperson of the SEEBURGER \
Supervisory Board:
Tel.: 07252 / 96 - 0 Prof. Dr. Simone Zeuchner
Fax: 07252 / 96 - 2222
Internet: http://www.seeburger.de Registergericht/Commercial Register:
e-mail: info@seeburger.de HRB 240708 Mannheim
Dieses E-Mail ist nur für den Empfänger bestimmt, an den es gerichtet ist und kann \
vertrauliches bzw. unter das Berufsgeheimnis fallendes Material enthalten. Jegliche \
darin enthaltene Ansicht oder Meinungsäußerung ist die des Autors und stellt nicht \
notwendigerweise die Ansicht oder Meinung der SEEBURGER AG dar. Sind Sie nicht der \
Empfänger, so haben Sie diese E-Mail irrtümlich erhalten und jegliche Verwendung, \
Veröffentlichung, Weiterleitung, Abschrift oder jeglicher Druck dieser E-Mail ist \
strengstens untersagt. Weder die SEEBURGER AG noch der Absender (Eckenfels. Bernd) \
übernehmen die Haftung für Viren; es obliegt Ihrer Verantwortung, die E-Mail und \
deren Anhänge auf Viren zu prüfen.
This email is intended only for the recipient(s) to whom it is addressed. This email \
may contain confidential material that may be protected by professional secrecy. Any \
fact or opinion contained, or expression of the material herein, does not necessarily \
reflect that of SEEBURGER AG. If you are not the addressee or if you have received \
this email in error, any use, publication or distribution including forwarding, \
copying or printing is strictly prohibited. Neither SEEBURGER AG, nor the sender \
(Eckenfels. Bernd) accept liability for viruses; it is your responsibility to check \
this email and its attachments for viruses.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic