คำถามติดแท็ก keytool

เครื่องมือจัดการคีย์และใบรับรอง: จัดการที่เก็บคีย์ (ฐานข้อมูล) ของคีย์การเข้ารหัสโซ่ใบรับรอง X.509 และใบรับรองที่เชื่อถือได้

10
ฉันหา keytool ของ Android ไม่พบ
ฉันพยายามที่จะปฏิบัติตาม Android ทำแผนที่การกวดวิชาและได้ส่วนนี้ที่ฉันได้รับคีย์ API ฉันพบของฉันแล้วdebug.keystoreแต่ดูเหมือนจะไม่เป็นkeytoolแอปพลิเคชันในไดเรกทอรี: C:\Documents and Settings\tward\\.android>ls adb_usb.ini avd debug.keystore repositories.cfg androidtool.cfg ddms.cfg default.keyset นอกจากนี้ยังไม่มีkeytoolในไดเรกทอรีนี้: C:\Android\android-sdk-windows\tools>ls AdbWinApi.dll apkbuilder.bat etc1tool.exe mksdcard.exe AdbWinUsbApi.dll ddms.bat fastboot.exe source.properties Jet dmtracedump.exe hierarchyviewer.bat sqlite3.exe NOTICE.txt draw9patch.bat hprof-conv.exe traceview.bat adb.exe emulator.exe layoutopt.bat zipalign.exe android.bat emulator_NOTICE.txt lib ฉันใช้Eclipseเป็นเครื่องมือแก้ไขของฉันและเชื่อว่าฉันได้ดาวน์โหลด SDK ล่าสุดทั้งหมดแล้ว ผมทำอะไรผิดหรือเปล่า?

7
Trust Store vs Key Store - สร้างด้วย keytool
ฉันเข้าใจว่าที่เก็บคีย์มักจะถือกุญแจส่วนตัว / สาธารณะและที่เก็บที่เชื่อถือได้จะเป็นกุญแจสาธารณะเท่านั้น (และแสดงถึงรายการของบุคคลที่เชื่อถือได้ที่คุณต้องการสื่อสารด้วย) นั่นเป็นข้อสันนิษฐานแรกของฉันดังนั้นถ้ามันไม่ถูกต้องฉันอาจจะยังไม่เริ่มดี ... ฉันสนใจแม้ว่าจะเข้าใจวิธี / เมื่อคุณแยกแยะร้านค้าเมื่อใช้ keytool ดังนั้นฉันได้สร้างที่เก็บคีย์โดยใช้แล้ว keytool -import -alias bob -file bob.crt -keystore keystore.ks ซึ่งสร้างไฟล์ keystore.ks ของฉัน ฉันตอบyesคำถามฉันเชื่อใจใน bob ได้หรือไม่ แต่ถ้าฉันสร้างไฟล์ที่เก็บคีย์หรือไฟล์ truststore ฉันสามารถตั้งค่าแอปพลิเคชันของฉันให้ใช้ไฟล์ได้เช่นกัน -Djavax.net.ssl.keyStore=keystore.ks -Djavax.net.ssl.keyStorePassword=x -Djavax.net.ssl.trustStore=keystore.ks -Djavax.net.ssl.trustStorePassword=x และด้วยการSystem.setProperty( "javax.net.debug", "ssl")ตั้งค่าฉันสามารถดูใบรับรองภายใต้การรับรองที่เชื่อถือได้ (แต่ไม่อยู่ในส่วนที่เก็บคีย์) ใบรับรองเฉพาะที่ฉันนำเข้ามีเพียงกุญแจสาธารณะและฉันตั้งใจจะใช้เพื่อส่งข้อมูลผ่านการเชื่อมต่อ SSL ไปยัง Bob (แต่อาจจะดีที่สุดสำหรับคำถามอื่น!) พอยน์เตอร์หรือคำชี้แจงใด ๆ ที่จะได้รับการชื่นชมมาก เอาต์พุตของ keytool เหมือนกันทุกสิ่งที่คุณนำเข้าและแบบแผนเพียงอย่างเดียวที่บอกว่าอันหนึ่งเป็นที่เก็บคีย์และอีกอันหนึ่งเป็นที่เก็บความเชื่อถือ ความสัมพันธ์เมื่อใช้ SSL ฯลฯ …
249 java  ssl  keytool  jce 

11
ยอมรับใบรับรอง SSL ที่ลงนามเองของเซิร์ฟเวอร์ในไคลเอ็นต์ Java
ดูเหมือนคำถามทั่วไป แต่ฉันไม่สามารถหาเส้นทางที่ชัดเจนได้ทุกที่ ฉันมีรหัส java พยายามเชื่อมต่อกับเซิร์ฟเวอร์ที่อาจมีใบรับรองที่ลงชื่อด้วยตนเอง (หรือหมดอายุ) รหัสรายงานข้อผิดพลาดต่อไปนี้: [HttpMethodDirector] I/O exception (javax.net.ssl.SSLHandshakeException) caught when processing request: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target ตามที่ฉันเข้าใจฉันต้องใช้keytoolและบอก java ว่าตกลงเพื่ออนุญาตการเชื่อมต่อนี้ คำแนะนำทั้งหมดในการแก้ไขปัญหานี้ถือว่าฉันมีความเชี่ยวชาญอย่างเต็มที่กับ keytool เช่น สร้างไพรเวตคีย์สำหรับเซิร์ฟเวอร์และนำเข้าสู่ที่เก็บคีย์ มีใครบ้างที่สามารถโพสต์คำแนะนำโดยละเอียด? ฉันใช้ระบบยูนิกซ์ดังนั้นสคริปต์ทุบตีจะดีที่สุด ไม่แน่ใจว่าสำคัญหรือไม่ แต่มีการใช้รหัสใน jboss
215 java  ssl  https  keytool 

11
ไม่พบเส้นทางการรับรองที่ถูกต้องไปยังเป้าหมายที่ร้องขอ - ข้อผิดพลาดแม้หลังจากที่ใบรับรองนำเข้าแล้ว
ฉันมีไคลเอนต์ Java พยายามเข้าถึงเซิร์ฟเวอร์ด้วยใบรับรองแบบลงนามด้วยตนเอง เมื่อฉันพยายามโพสต์ไปยังเซิร์ฟเวอร์ฉันได้รับข้อผิดพลาดต่อไปนี้: ไม่สามารถค้นหาเส้นทางการรับรองที่ถูกต้องไปยังเป้าหมายที่ร้องขอ หลังจากทำวิจัยเกี่ยวกับปัญหาแล้วฉันก็ทำสิ่งต่อไปนี้ บันทึกชื่อโดเมนเซิร์ฟเวอร์ของฉันเป็นroot.cerไฟล์ ใน JRE ของเซิร์ฟเวอร์ Glassfish ของฉันฉันรันสิ่งนี้: keytool -import -alias example -keystore cacerts -file root.cer ในการตรวจสอบใบรับรองถูกเพิ่มไปยัง cacert ของฉันสำเร็จฉันทำสิ่งนี้: keytool -list -v -keystore cacerts ฉันเห็นว่าใบรับรองนั้นมีอยู่ จากนั้นฉันเริ่ม Glassfish ใหม่และยกเลิก 'โพสต์' ฉันยังคงได้รับข้อผิดพลาดของงา ฉันมีความรู้สึกเช่นนี้เพราะ Glassfish ของฉันไม่ได้อ่านไฟล์ cacert ที่ฉันได้แก้ไข แต่อาจมีบางอัน คุณเคยมีปัญหานี้บ้างหรือไม่และสามารถผลักฉันไปในทิศทางที่ถูกต้องได้หรือไม่
205 java  ssl  keytool 

19
ฉันจะค้นหาและเรียกใช้ keytool ได้อย่างไร
ฉันกำลังอ่านคำแนะนำการพัฒนาของนักพัฒนา Facebook ที่นี่ มันบอกว่าฉันต้องใช้ keytool เพื่อส่งออกลายเซ็นสำหรับแอพของฉันเช่น: keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 ฉันไม่ทราบวิธีการค้นหา keytool เพื่อเรียกใช้ ฉันพยายามเปิดพรอมต์คำสั่ง Windows แล้ววางคำสั่งด้านบน แต่ไม่ได้ผล

15
Openssl ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก
ฉันต้องการสร้างลายเซ็นแอปพลิเคชันสำหรับแอปของฉันซึ่งจะรวมเข้ากับ Facebook ในภายหลัง หนึ่งในบทเรียนของ Facebook ฉันพบคำสั่งนี้: keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 ในบทช่วยสอนบอกว่าการรัน cmd นี้กระบวนการของฉันในการสร้างลายเซ็นจะเริ่มขึ้น อย่างไรก็ตามคำสั่งนี้ให้ข้อผิดพลาด: openssl is not recognized as an internal or external command ฉันจะกำจัดสิ่งนี้ได้อย่างไร

9
วิธีอิมพอร์ตใบรับรองที่ลงนามเองอย่างถูกต้องไปยังที่เก็บคีย์ Java ที่พร้อมใช้งานสำหรับแอ็พพลิเคชัน Java ทั้งหมดโดยดีฟอลต์?
ฉันต้องการนำเข้าใบรับรองที่ลงนามด้วยตนเองลงใน Java ดังนั้นแอปพลิเคชัน Java ใด ๆ ที่จะพยายามสร้างการเชื่อมต่อ SSL จะเชื่อถือใบรับรองนี้ จนถึงตอนนี้ฉันพยายามที่จะนำเข้ามัน keytool -import -trustcacerts -noprompt -storepass changeit -alias $REMHOST -file $REMHOST.pem keytool -import -trustcacerts -noprompt -keystore cacerts -storepass changeit -alias $REMHOST -file $REMHOST.pem ถึงกระนั้นเมื่อฉันพยายามที่จะเรียกใช้HTTPSClient.classฉันยังคงได้รับ: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: การสร้างเส้นทาง PKIX ล้มเหลว: sun.security.provider.certpath.SunCertPathBuilderException: ไม่สามารถค้นหาเส้นทางการรับรองที่ถูกต้องไปยังเป้าหมายที่ร้องขอ


25
ข้อผิดพลาด: 'keytool' ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอกโปรแกรมที่ทำงานได้หรือไฟล์แบตช์
เมื่อฉันใช้คำสั่ง C:\>keytool -list -alias androiddebugkey -keystore .android\debug.keystore -storepass android -keypass android ฉันได้รับข้อผิดพลาดนี้: 'keytool' ไม่รู้จักว่าเป็นคำสั่งภายในหรือภายนอก, โปรแกรมที่ทำงานได้หรือไฟล์แบตช์ ฉันไม่สามารถรับลายนิ้วมือใบรับรอง (MD5) บนคอมพิวเตอร์ของฉัน ฉันได้รับรองว่าไฟล์ที่เก็บคีย์มีอยู่ในตำแหน่งที่เหมาะสม ความช่วยเหลือใด ๆ
138 android  keytool 

6
ฉันไม่เคยตั้งรหัสผ่านให้ที่เก็บคีย์และชื่อแทนของฉันดังนั้นจะสร้างอย่างไร
ขณะที่ฉันกำลังอ่านข้อความบนอินเทอร์เน็ตเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการลงชื่อแอพ Android ของคุณฉันได้รับโพสต์เช่นวิธีลงชื่อแอปและบางอย่างเกี่ยวกับสิ่งที่ถ้าคุณทำไฟล์หรือรหัสผ่านหายไป คำถามที่ฉันมาที่นี่เพื่อถามคือฉันไม่เคยสร้างที่เก็บคีย์หรือชื่อแทนหรือรหัสผ่านดังนั้นฉันจะลืมมันได้อย่างไรบนโลกใบนี้ ฉันรู้ว่าสำหรับ Android เราใช้รหัสผ่านAndroidดังนั้นหากรหัสผ่านเป็นค่าเริ่มต้น Android หนึ่งจะลืมได้อย่างไร (ฉันแน่ใจว่าต้องมีวิธีอื่นในการสร้างที่เก็บคีย์ใหม่) ในที่สุดถ้า Android เป็นรหัสผ่านเริ่มต้นนามแฝงเริ่มต้นคืออะไร?

2
วิธีดูเนื้อหาของใบรับรอง. pem
ฉันกำลังใช้ keytoolJava ฉันได้ส่งออก.pemใบรับรองที่ลงนามด้วยตนเองจากที่เก็บคีย์ของฉัน มีคำสั่งเพื่อดูรายละเอียดใบรับรองจาก.pemไฟล์โดยตรงหรือไม่ (ไม่ใช่ของใบรับรองในที่เก็บคีย์)
132 keytool 

11
ข้อผิดพลาด Java Keytool หลังจากนำเข้าใบรับรอง“ ข้อผิดพลาด keytool: java.io.FileNotFoundException & Access Denied”
ฉันกำลังพยายามเชื่อมต่อ Java Web API ผ่าน HTTPS อย่างไรก็ตามมีข้อยกเว้นเกิดขึ้น: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException ฉันทำตามขั้นตอนเหล่านี้ซึ่งฉันได้เรียนรู้จากบทเรียนออนไลน์ keytool และใบรับรอง SSL: ฉันคัดลอก URL HTTPS ลงในเบราว์เซอร์ดาวน์โหลดใบรับรอง SSL และติดตั้งในเบราว์เซอร์โดยใช้ Internet Explorer ส่งออกใบรับรองไปยังเส้นทางบนคอมพิวเตอร์ของฉันใบรับรองถูกบันทึกเป็น .cer ใช้ตัวเลือกการนำเข้าของ keytool คำสั่งด้านล่างดำเนินการโดยไม่มีข้อผิดพลาดใด ๆ keytool -import -alias downloadedCertAlias -keystore C:\path\to\my\keystore\cacerts.file -file C:\path\of\exportedCert.cer ฉันได้รับแจ้งให้ใส่รหัสผ่านที่พรอมต์คำสั่งซึ่งฉันป้อนแล้วฉันได้รับการรับรองความถูกต้อง cmdหน้าต่างพิมพ์ข้อมูลใบรับรองบางและลายเซ็นและผมได้รับแจ้งมีคำถาม: เชื่อถือใบรับรองนี้ไหม ฉันตอบว่าใช่ พร้อมต์ cmd ปรากฏขึ้น เพิ่มใบรับรองในที่เก็บคีย์แล้ว อย่างไรก็ตามหลังจากข้อความนั้นมีข้อยกเว้นอื่นปรากฏขึ้น: keytool error: java.io.FileNotFoundException: C:\Program files\...\cacerts <Access …

10
ฉันจะทราบได้อย่างไรว่า JVM ของฉันใช้ที่เก็บคีย์ใด
ฉันต้องการนำเข้าใบรับรองไปยังที่เก็บคีย์ JVM ของฉัน ฉันใช้สิ่งต่อไปนี้: keytool -import -alias daldap -file somecert.cer ดังนั้นฉันอาจต้องเปลี่ยนคำเรียกของฉันเป็น: keytool -import -alias daldap -file somecert.cer -keystore cacerts –storepass changeit
125 java  jvm  keytool 

4
ฉันจะเข้าสู่ที่เก็บคีย์ Java แบบไม่ใช้รหัสผ่านหรือเปลี่ยนรหัสผ่านได้อย่างไร
ฉันกำลังพยายามนำเข้าใบรับรองที่เชื่อถือได้ไปยังที่เก็บคีย์ของJava cacertsแต่ฉันมีปัญหา ฉันพยายามแสดงรายการใบรับรองที่เชื่อถือได้ที่มีอยู่และดูเหมือนว่าที่เก็บคีย์จะไม่ได้รับการป้องกันด้วยรหัสผ่าน $ keytool -list -keystore cacerts Enter keystore password: ***************** WARNING WARNING WARNING ***************** * The integrity of the information stored in your keystore * * has NOT been verified! In order to verify its integrity, * * you must provide your keystore password. * ***************** WARNING WARNING …

6
วิธีการแปลงไฟล์. pfx เป็นที่เก็บคีย์ด้วยคีย์ส่วนตัว
ฉันต้องการลงนามแอปพลิเคชัน Android ( .apk) ฉันมี.pfxไฟล์ ฉันแปลงเป็น.cerไฟล์ผ่าน Internet Explorer จากนั้นแปลง.cerเป็น.keystoreโดยใช้ keytool จากนั้นฉันได้พยายามลงชื่อ.apkกับ jarsigner แต่มันบอกว่า. keystore ไม่เนื้อหาคีย์ส่วนตัว ฉันทำอะไรผิด?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.