==== Zabezpecenia komunikacie HTTPS pomocou BKS ====
Pre komunikaciu je potrebne mat v instalacnom baliku pridany aj tzv. [[https://en.wikipedia.org/wiki/Bouncy_Castle_%28cryptography%29|BKS subor]], ktory zapuzdruje certifikat (.crt, .pem, .key) pre potreby jazyka JAVA.
Pre kazdy server s ktorym revizorska citacka komunikuje, je potrebne mat v balicku (.apk) pribaleny aj .bks subor pre autentifikaciu. BKS subory sa nahravaju do projektu na cestu:
NFCAuditor/app/src/main/res/raw
Zdroje:
[[http://nelenkov.blogspot.sk/2011/12/using-custom-certificate-trust-store-on.html|example blog]] a k nemu prisluchajuci repozitar s examplom [[https://github.com/nelenkov/|github example]]
Zaloha pre pripad nefunkcneho linku sa nachadza na FTP ulozisku:
/DokumentaciaTD/VyvojovyUsek/VyvojSW/TransFare/TransFare_Inspection/knowledges
=== Generovanie BKS certifikatu ===
Certifikat je mozne generovat na lubovolnom pocitaci/klientovi, kde je nainstalovana java pre vyvojarov (JDK).
Je potrebne nainstalovat BouncyCastleProvider pre javu:
- Stiahnut [https://www.bouncycastle.org/latest_releases.html|BC jar archiv] a nakopirovat do //$JAVA_HOME/jre/lib/ext//
- Pridanie do //$JAVA_HOME/jre/lib/security/java.security// riadok:
security.provider.N=org.bouncycastle.jce.provider.BouncyCastleProvider
Nasledne je potrebne stiahnut certificat zo servra (.ca, .pem, .key), na ktory je potrebne sa zo zariadenia pripajat. Zo stiahnutych suborov sa na klientskej stanici, kde je nainstalovana JAVA-JDK vygeneruje **BKS** subor.
Generovanie BKS certifikatu je mozne pomocou bash skriptu 'importcert.sh', ktory sa nachadza v git repozitari revizorskej citacky [[howto:git#zoznam_repozitarov_-_server|Zoznam repozitarov]]. Do BKS suboru nevstupuje privatna cast kluca.