{"id":472,"date":"2007-12-06T12:27:35","date_gmt":"2007-12-06T15:27:35","guid":{"rendered":"http:\/\/www.maurom.com\/blog\/?p=472"},"modified":"2012-10-21T17:38:52","modified_gmt":"2012-10-21T20:38:52","slug":"java-1-4-los-certificados-y-la-p","status":"publish","type":"post","link":"https:\/\/maurom.com\/blog\/2007\/12\/06\/java-1-4-los-certificados-y-la-p\/","title":{"rendered":"Java 1.4, los certificados, y la p&#8230;"},"content":{"rendered":"<p>Ayer estuve una hora tratando de que la herramienta <span style=\"font-style: italic;\">keytool<\/span> de java 1.4 importe un certificado. S\u00ed, ya s\u00e9 que esa versi\u00f3n es obsoleta, pero en este caso no hay otra opci\u00f3n. El tema es que luego de miles de pruebas no hab\u00eda forma de que reconociera el certificado como X.509 (aunque realmente fuera as\u00ed).<\/p>\n<p>Pues bien, import\u00e9 el certificado en Java 1.5 y ning\u00fan drama, entonces arm\u00e9 un nuevo certificado de prueba con una clave de menor longitud y&#8230; bingo! la versi\u00f3n 1.4.2 no acepta longitudes de clave mayores a 2048, como era de esperarse debido a <a href=\"http:\/\/java.sun.com\/j2se\/1.4.2\/docs\/guide\/security\/jce\/JCERefGuide.html#AppE\">restricciones de exportaci\u00f3n<\/a>.<\/p>\n<p>Pero yo quiero mi certificado con clave de 4096 bits! Googleando un poco encontr\u00e9 un hermoso documento donde unos buenos <a href=\"http:\/\/codelabs.ru\/\">muchachos rusos<\/a> explican <a href=\"http:\/\/codelabs.ru\/grid\/java-4096.txt\">c\u00f3mo habilitar la utilizaci\u00f3n de claves de mayor longitud<\/a>.<\/p>\n<p>Para ello:<\/p>\n<ol>\n<li>Suponiendo que el <span style=\"font-style: italic;\">JRE<\/span> se encuentra en <span style=\"font-style: italic;\">\/usr\/lib\/j2se\/1.4\/jre\/<\/span><\/li>\n<li>Descargar e instalar el <a href=\"http:\/\/www.bouncycastle.org\/download\/bcprov-jdk14-138.jar\">jar de BouncyCastle CryptoProvider<\/a> en <span style=\"font-style: italic;\">$JRE\/lib\/ext<\/span><\/li>\n<li>Descargar e instalar los archivos de la <a href=\"http:\/\/javashoplm.sun.com\/ECom\/docs\/Welcome.jsp?StoreId=22&amp;PartDetailId=7503-jce-1.4.2-oth-JPR&amp;SiteId=JSC&amp;TransactionId=noreg\">Unlimited Strength Jurisdiction Policy 1.4.2<\/a> en <span style=\"font-style: italic;\">$JRE\/lib\/security<\/span><\/li>\n<li>Modificar el archivo <span style=\"font-style: italic;\">$JRE\/lib\/security\/java.security<\/span>estableciendo los proveedores de seguridad como sigue:\n<pre>security.provider.1=sun.security.provider.Sun\r\nsecurity.provider.2=org.bouncycastle.jce.provider.BouncyCastleProvider\r\nsecurity.provider.3=com.sun.net.ssl.internal.ssl.Provider\r\nsecurity.provider.4=com.sun.rsajca.Provider\r\nsecurity.provider.5=com.sun.crypto.provider.SunJCE\r\nsecurity.provider.6=sun.security.jgss.SunProvider<\/pre>\n<p>El de BouncyCastle <span style=\"font-weight: bold;\">debe ser el segundo<\/span>.<\/li>\n<\/ol>\n<p>Y con eso deber\u00eda alcanzar para poder utilizar certificados con clave de 4096 bits. O eso espero&#8230;<br \/>\nBueno los dejo por ahora as\u00ed como algo. Saludos!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ayer estuve una hora tratando de que la herramienta keytool de java 1.4 importe un certificado. S\u00ed, ya s\u00e9 que esa versi\u00f3n es obsoleta, pero en este caso no hay otra opci\u00f3n. El tema es que luego de miles de pruebas no hab\u00eda forma de que reconociera el certificado como X.509 (aunque realmente fuera as\u00ed). [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[8],"_links":{"self":[{"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/posts\/472"}],"collection":[{"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/comments?post=472"}],"version-history":[{"count":0,"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/posts\/472\/revisions"}],"wp:attachment":[{"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/media?parent=472"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/categories?post=472"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/maurom.com\/blog\/wp-json\/wp\/v2\/tags?post=472"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}