How to Apply App Certificates

From wizarPOS
Revision as of 10:14, 31 May 2019 by Hans (talk | contribs)

The user mode terminal checks the certificate of APK when installing. The signature certificate should be issued by the application root certificate. By default, there is default WizarPOS root certificate in the terminal. So the developer should apply development certificate from wizarPOS.

Running Environment

The follow steps will run in PC, and use keytool in JDK, so please make sure you have installed the JDK in your PC.

Generate Private Keystore

 keytool -genkeypair -keystore demo.jks -keyalg RSA -keysize 2048 -alias androiddebugkey -dname "EMAILADDRESS=myname@abc.com, CN=MyName, OU=RD, O=ABC company, L=Shanghai, ST=Shanghai, C=CN"

Notes:

  • Domain name should be filled according the real information of your company. CN=commonName, OU=organizationUnit, O=organizationName, L=localityName, ST=state or province name, C=country.
  • EMAILADDRESS must be filled by company official email address.
  • If you want to use this key store in Eclipse as a custom debug key store, the alias of the key should be “androiddebugkey” and the password should be “android”. If you won’t use this key store in Eclipse, you can use any alias name or password.

Export CSR (Certificate Signature Request)

 keytool -certreq -keystore demo.jks -alias androiddebugkey > demo.csr 

Send CSR to WizarPOS

Send CSR to support@wizarpos.com

Import the Certificate Chain

Import the replied certificate chain of the CSR(*.crt or *.pem), when you receive them from WizarPOS.:

 keytool -importcert -keystore demo.jks -file file-name-of-CSR-reply -alias androiddebugkey

Notes:

  • Store the attached pem file of WizarPOS reply to the same folder of jks file.
  • file-name-of-CSR-reply is the file name of the pem file with certificate chain.
  • Choose Yes, when the importing tools ask you if you want to trust them.

FAQ

Keytool

keytool.exe is in the JRE path, XXX/Java/jreXXX/bin, if you have set the environment variable, JAVA_HOME, you can run keytool command line in every path, or else you must run the command line in the JRE path.

Keysize Problem when Generate Keypair

Please download the unlimited strength policy from java website:

Java6: http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

Java7: http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

Copy the local_policy.jar and US_export_policy.jar to the folder $JAVA_HOME/jre/lib/security

CSR error

After export CSR, please open the CSR in Notepad, if the CSR content begin with "-----BEGIN NEW CERTIFICATE REQUEST-----", end with "-----END NEW CERTIFICATE REQUEST-----", there are contents in the middle, that means the CSR file is right.

If the CSR only contents an error message, please fix the problem according the message.

Country Name Codes

List of 2 letter country codes.

AF - Afghanistan AX - Aland Islands AL - Albania DZ - Algeria AS - American Samoa AD - Andorra AO - Angola AI - Anguilla AQ - Antarctica AG - Antigua and Barbuda AR - Argentin a AM - Armenia AW - Aruba AC - Ascension Island AU - Australia AT - Austria AZ - Azerbaijan BS - Bahamas BH - Bahrain BB - Barbados BD - Bangladesh BY - Belarus BE - Belgium BZ - Belize BJ - Benin BM - Bermuda BT - Bhutan BW - Botswana BO - Bolivia BA - Bosnia and Herzegovin a BV - Bouvet Island BR - Brazil IO - British Indian Ocean Territory BN - Brunei Darussalam BG - Bulgaria BF - Burkin a Faso BI - Burundi KH - Cambodia CM - Cameroon CA - Canada CV - Cape Verde KY - Cayman Islands CF - Central African Republic TD - Chad CL - Chile CN - Chin a CX - Christmas Island CC - Cocos (Keeling) Islands CO - Colombia KM - Comoros CG - Congo CD - Congo, Democratic Republic CK - Cook Islands CR - Costa Rica CI - Cote D'Ivoire (Ivory Coast) HR - Croatia (Hrvatska) CU - Cuba CY - Cyprus CZ - Czech Republic CS - Czechoslovakia (former) DK - Denmark DJ - Djibouti DM - Dominica DO - Dominican Republic TP - East Timor EC - Ecuador EG - Egypt SV - El Salvador GQ - Equatorial Guinea ER - Eritrea EE - Estonia ET - Ethiopia FK - Falkland Islands (Malvin as) FO - Faroe Islands FJ - Fiji FI - Finland FR - France FX - France, Metropolitan GF - French Guiana PF - French Polynesia TF - French Southern Territories MK - F.Y.R.O.M. (Macedonia) GA - Gabon GM - Gambia GE - Georgia DE - Germany GH - Ghana GI - Gibraltar GB - Great Britain (UK) GR - Greece GL - Greenland GD - Grenada GP - Guadeloupe GU - Guam GT - Guatemala GN - Guinea GW - Guinea-Bissau GY - Guyana HT - Haiti HM - Heard and McDonald Islands HN - Honduras HK - Hong Kong HU - Hungary IS - Iceland IN - India ID - Indonesia IR - Iran IQ - Iraq IE - Ireland IL - Israel IM - Isle of Man IT - Italy JE - Jersey JM - Jamaica JP - Japan JO - Jordan KZ - Kazakhstan KE - Kenya KI - Kiribati KP - Korea (North) KR - Korea (South) KW - Kuwait KG - Kyrgyzstan LA - Laos LV - Latvia LB - Lebanon LI - Liechtenstein LR - Liberia LY - Libya LS - Lesotho LT - Lithuania LU - Luxembourg MO - Macau MG - Madagascar MW - Malawi MY - Malaysia MV - Maldives ML - Mali MT - Malta MH - Marshall Islands MQ - Martinique MR - Mauritania MU - Mauritius YT - Mayotte MX - Mexico FM - Micronesia MD - Moldova MC - Monaco ME - Montenegro MS - Montserrat MA - Morocco MZ - Mozambique MM - Myanmar NA - Namibia NR - Nauru NP - Nepal NL - Netherlands AN - Netherlands Antilles NT - Neutral Zone NC - New Caledonia NZ - New Zealand (Aotearoa) NI - Nicaragua NE - Niger NG - Nigeria NU - Niue NF - Norfolk Island MP - Northern Mariana Islands NO - Norway OM - Oman PK - Pakistan PW - Palau PS - Palestinian Territory, Occupied PA - Panama PG - Papua New Guinea PY - Paraguay PE - Peru PH - Philippines PN - Pitcairn PL - Poland PT - Portugal PR - Puerto Rico QA - Qatar RE - Reunion RO - Romania RU - Russian Federation RW - Rwanda GS - S. Georgia and S. Sandwich Isles. KN - Saint Kitts and Nevis LC - Saint Lucia VC - Saint Vincent & the Grenadines WS - Samoa SM - San Marino ST - Sao Tome and Principe SA - Saudi Arabia SN - Senegal RS - Serbia SC - Seychelles SL - Sierra Leone SG - Singapore SI - Slovenia SK - Slovak Republic SB - Solomon Islands SO - Somalia ZA - South Africa GS - S. Georgia and S. Sandwich Isles. ES - Spain LK - Sri Lanka SH - St. Helena PM - St. Pierre and Miquelon SD - Sudan SR - Surin ame SJ - Svalbard & Jan Mayen Islands SZ - Swaziland SE - Sweden CH - Switzerland SY - Syria TW - Taiwan TJ - Tajikistan TZ - Tanzania TH - Thailand TG - Togo TK - Tokelau TO - Tonga TT - Trinidad and Tobago TN - Tunisia TR - Turkey TM - Turkmenistan TC - Turks and Caicos Islands TV - Tuvalu UG - Uganda UA - Ukraine AE - United Arab Emirates UK - United Kingdom US - United States UM - US Minor Outlying Islands UY - Uruguay SU - USSR (former) UZ - Uzbekistan VU - Vanuatu VA - Vatican City State (Holy See) VE - Venezuela VN - Viet Nam VG - British Virgin Islands VI - Virgin Islands (U.S.) WF - Wallis and Futuna Islands EH - Western Sahara YE - Yemen YU - Yugoslavia (former) ZM - Zambia (ZR - Zaire) - See CD Congo, Democratic Republic ZW - Zimbabwe