<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ゞ沉默是金ゞ

    魚離不開水,但是沒有說不離開哪滴水.
    posts - 98,comments - 104,trackbacks - 0

    Here I have described how to create client/server keystores which can be used to secure Axsi2 webservices and invoke Axis2 secured webservices. i.e. It can be easily used with any WSO2 Product to experience security scenarios.More detailed explanation on creating client/server keystores using openssl including Certificate Authority(CA) Requests, can be found at http://wso2.org/library/174.

     

    Java keytool stores the keys and certificates in a keystore, protected by a keystore password. Further, it protects private key again with another password. A Java keystore contains private-public key pair and multiple trusted certificate entries. All entries in a keystore are referred by aliases. Both private key and self signed public key is referred by one alias while any other trusted certificates are referred by different individual aliases.

     

    As the first step, let's create a keystore for server. In order to do it, execute following command in a terminal. "server" in the following command corresponds to the private key/self signed public key certificate alias in the keystore while "server.jks" is the name of the creating keystore file.

    keytool -genkey -alias server -keyalg RSA -keystore server.jks

    when you execute the above command it will first prompt you to specify a password which is corresponded to the keystore password. Then it will prompt several questions. You can give answers that you wish. At the end it will ask for a password again, which will be used to secure the generated private key.

    Enter keystore password: 
    Re-enter new password:
    What is your first and last name?
    [Unknown]: Ruchira Wageesha
    What is the name of your organizational unit?
    [Unknown]: Mashup Server
    What is the name of your organization?
    [Unknown]: WSO2
    What is the name of your City or Locality?
    [Unknown]: Ahangama
    What is the name of your State or Province?
    [Unknown]: Southern
    What is the two-letter country code for this unit?
    [Unknown]: LK
    Is CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK correct?
    [no]: yes
    Enter key password for
    (RETURN if same as keystore password):

    Once you successfully completed this, java keytool will create a file named "server.jks". In the same way, you can create a client keystore named "client.jks" with the alias "client" using following command.

    keytool -genkey -alias client -keyalg RSA -keystore client.jks

    Now, you have two files named client.jks and server.jks. You can view the content of these keystore files using the following command. Replacess "ruchira" with the keystore password you entered while creating the keystore.

    keytool -list -v -keystore server.jks -storepass ruchira

    This will list something like this.

    Keystore type: JKS
    Keystore provider: SUN

    Your keystore contains 1 entry

    Alias name: server
    Creation date: Jul 8, 2010
    Entry type: PrivateKeyEntry
    Certificate chain length: 1
    Certificate[1]:
    Owner: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Issuer: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Serial number: 4c356225
    Valid from: Thu Jul 08 10:59:09 IST 2010 until: Wed Oct 06 10:59:09 IST 2010
    Certificate fingerprints:
    MD5: 60:0B:48:0D:DB:56:8C:68:8C:2D:94:4A:D6:DA:04:B8
    SHA1: A7:CE:57:10:70:87:C1:2C:C0:9D:1D:90:8C:BB:69:B6:66:26:97:13
    Signature algorithm name: SHA1withRSA
    Version: 3

    *******************************************
    *******************************************

    The next step is, getting server's self signed public key certificate and storing it in client's keystore. And getting and storing client's self signed public key certificate in server's keystore. In order to do that, first we need to export both server and client public key certificates into files. Using the following command, you can export server's public key certificate into server.cert file and client's public key certificate into client.cert file.

    keytool -export -file server.cert -keystore server.jks -storepass ruchira -alias server
    keytool -export -file client.cert -keystore client.jks -storepass ruchira -alias client

    Now you have server.cert and client.cert. You can use following commands to view certificate contents.

    keytool -printcert -v -file server.cert
    keytool -printcert -v -file client.cert

    As the last step, we need to import server.cert into client keystore and client.cert into server keystore. As I mentioned earlier, each entry of a Java Keystore is stored against an alias. So, we need to specify aliases here, which will be used to refer the certificates that we are going to store.

    keytool -import -file client.cert -keystore server.jks -storepass ruchira -alias client

    Above command will store client's self signed public key certificate(client.cert) in server.jks against the alias "client". So, using "client" alias on server.jks, we can refer client's certificate anytime. Likewise, following command will store server.cert within client.jks against the alias "server".

    keytool -import -file server.cert -keystore client.jks -storepass ruchira -alias server

    After all, please view the content of both keystore again using following commands.

    keytool -list -v -keystore server.jks -storepass ruchira
    keytool -list -v -keystore client.jks -storepass ruchira

    It will give you something like bellow for server.jks

    Keystore type: JKS
    Keystore provider: SUN

    Your keystore contains 2 entries

    Alias name: server
    Creation date: Jul 8, 2010
    Entry type: PrivateKeyEntry
    Certificate chain length: 1
    Certificate[1]:
    Owner: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Issuer: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Serial number: 4c3562a0
    Valid from: Thu Jul 08 11:01:12 IST 2010 until: Wed Oct 06 11:01:12 IST 2010
    Certificate fingerprints:
    MD5: AB:77:72:F1:0D:09:55:E3:B6:D3:DC:A6:4D:D4:39:36
    SHA1: D7:C1:60:5C:7E:34:40:A9:0B:E4:2C:65:6C:E0:79:7C:EE:37:A7:19
    Signature algorithm name: SHA1withRSA
    Version: 3

    *******************************************
    *******************************************

    Alias name: client
    Creation date: Jul 8, 2010
    Entry type: trustedCertEntry

    Owner: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Issuer: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Serial number: 4c356225
    Valid from: Thu Jul 08 10:59:09 IST 2010 until: Wed Oct 06 10:59:09 IST 2010
    Certificate fingerprints:
    MD5: 60:0B:48:0D:DB:56:8C:68:8C:2D:94:4A:D6:DA:04:B8
    SHA1: A7:CE:57:10:70:87:C1:2C:C0:9D:1D:90:8C:BB:69:B6:66:26:97:13
    Signature algorithm name: SHA1withRSA
    Version: 3

    *******************************************
    *******************************************

    something like below for client.jks

    Keystore type: JKS
    Keystore provider: SUN

    Your keystore contains 2 entries

    Alias name: server
    Creation date: Jul 8, 2010
    Entry type: trustedCertEntry

    Owner: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Issuer: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Serial number: 4c3562a0
    Valid from: Thu Jul 08 11:01:12 IST 2010 until: Wed Oct 06 11:01:12 IST 2010
    Certificate fingerprints:
    MD5: AB:77:72:F1:0D:09:55:E3:B6:D3:DC:A6:4D:D4:39:36
    SHA1: D7:C1:60:5C:7E:34:40:A9:0B:E4:2C:65:6C:E0:79:7C:EE:37:A7:19
    Signature algorithm name: SHA1withRSA
    Version: 3

    *******************************************
    *******************************************

    Alias name: client
    Creation date: Jul 8, 2010
    Entry type: PrivateKeyEntry
    Certificate chain length: 1
    Certificate[1]:
    Owner: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Issuer: CN=Ruchira Wageesha, OU=Mashup Server, O=WSO2, L=Ahangama, ST=Southern, C=LK
    Serial number: 4c356225
    Valid from: Thu Jul 08 10:59:09 IST 2010 until: Wed Oct 06 10:59:09 IST 2010
    Certificate fingerprints:
    MD5: 60:0B:48:0D:DB:56:8C:68:8C:2D:94:4A:D6:DA:04:B8
    SHA1: A7:CE:57:10:70:87:C1:2C:C0:9D:1D:90:8C:BB:69:B6:66:26:97:13
    Signature algorithm name: SHA1withRSA
    Version: 3

    *******************************************
    *******************************************

    If everything went well, you might have successfully created server.jks and client.jks which can be used to secure Axis2 Services and access those secured services.

    posted on 2012-06-26 19:15 ゞ沉默是金ゞ 閱讀(988) 評論(1)  編輯  收藏 所屬分類: Java SE 、HTTP 、eXtreme 、Broker 、EJB

    FeedBack:
    # re: How to Create Client/Server Keystores using Java Keytool
    2015-01-14 17:02 | Freud
    Shawn?  回復  更多評論
      
    主站蜘蛛池模板: 久久精品女人天堂AV免费观看| 亚洲宅男精品一区在线观看| 四虎国产精品永免费| 免费鲁丝片一级在线观看| 亚洲AV色吊丝无码| 国产成在线观看免费视频| 在线观看亚洲一区二区| 在线观看成人免费视频不卡| 亚洲国产成人久久综合一区| 最新欧洲大片免费在线| xxx毛茸茸的亚洲| 女人张开腿等男人桶免费视频| 国产成人亚洲综合网站不卡| 成年人免费观看视频网站| 久久亚洲精品无码gv| 免费亚洲视频在线观看| 有色视频在线观看免费高清在线直播 | 亚洲av午夜成人片精品网站 | 免费国产高清毛不卡片基地| 亚洲成a人在线看天堂无码| 国产精品小视频免费无限app| 狠狠亚洲婷婷综合色香五月排名| 国产午夜无码精品免费看| 亚洲精品第五页中文字幕| 成人无码区免费A片视频WWW| 亚洲成在人线在线播放无码| 亚洲国产精品成人久久蜜臀| 国产一级a毛一级a看免费视频| 亚洲AV无码专区电影在线观看 | 午夜一区二区免费视频| 四虎精品免费永久免费视频| 亚洲精品无码不卡在线播放HE| 131美女爱做免费毛片| 国产精品亚洲四区在线观看 | 亚洲爆乳无码专区| 1000部拍拍拍18勿入免费视频下载 | 97se亚洲国产综合自在线| 亚洲 小说区 图片区 都市| 无码日韩精品一区二区三区免费| 亚洲videosbestsex日本| 四虎影在线永久免费四虎地址8848aa|