Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android Waktunya telah tiba untuk menggunakan kriptografi mekanisme PKCS#11 dan pada platform Android. Beberapa orang mungkin mengatakan bahwa tidak ada token perangkat keras untuk Android. Namun jika memang demikian, maka ini hanya fenomena sementara. Namun hari ini Anda dapat memasang atau menggunakan token perangkat lunak token awan. Sejak utilitas cryptoarmpkcs-A dikembangkan untuk platform Android menggunakan Androwish dalam bahasa skrip Tcl/Tk, kemudian paket tersebut digunakan untuk menghubungkan token TclPKCS11 versi 1.0.1.

Dalam hal ini, pemrosesan paket tidak diperlukan. Yang dilakukan hanyalah menambahkan skrip ke proyek untuk membangun perpustakaan paket yang ditulis dalam bahasa tersebut Si, untuk Android dan distribusi perpustakaan itu sendiri. Diputuskan untuk menambahkan perpustakaan perangkat lunak ls11sw2016 dan token cloud ls11cloud untuk berbagai platform ke proyek yang sama.

Segala sesuatu yang lain sederhana. Kami menambahkan tombol untuk memilih token yang berfungsi ke jendela kedua dan mendapatkan:

  • token perangkat lunak ls11sw2016;
  • token awan ls11cloud;
  • token PKCS11#11 lainnya.

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Secara default, token perangkat lunak terhubung. Jika belum pernah dibuat sebelumnya, Anda akan diminta untuk menginisialisasinya. Mari kita ingat hal itu inisialisasi token terdiri dari penetapan tag dan pengaturan kode PIN pengguna:

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Perhatikan bahwa token perangkat lunak dikembangkan sesuai dengan rekomendasi PKCS#11 v.2.40 dan TK-26. Untuk mendapatkan informasi lengkap tentang token, termasuk mekanisme kriptografi yang didukung, cukup klik tombol “Tentang token dan kriptografinya” di menu utama (“Fungsional”). Saat ini, tidak ada satu pun token perangkat keras yang mendukung kriptografi Rusia yang memiliki fungsi ini:

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Timbul pertanyaan: - bagaimana cara memasang sertifikat pribadi pada token. Ada dua pilihan. Opsi pertama adalah mengimpor sertifikat itu sendiri dan pasangan kuncinya melalui kontainer PKCS#12 (tombol “Bekerja dengan PKCS12/PFX”):

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Opsi kedua melibatkan pembuatan permintaan (PKCS#10) untuk sertifikat. Opsi ini (function "Permintaan Sertifikat") menyediakan pembuatan pasangan kunci langsung pada token:

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Sekarang Anda dapat menyimpan permintaan ke flash drive dan pergi ke pusat sertifikasi untuk sertifikat. Jika Anda akan menggunakan sertifikat untuk tujuan pengujian atau secara internal, Anda juga dapat menggunakan utilitas untuk menerbitkan sertifikat CAFL63. Sertifikat yang dihasilkan diimpor ke token di tab “Lihat Permintaan/Sertifikat”:

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Anda sekarang dapat menandatangani dokumen dengan sertifikat yang disimpan di token menggunakan tab "Tanda tangani dokumen".

Pada artikel selanjutnya kami akan memberi tahu Anda cara terhubung ke token cloud. Dan pertanyaan tentang pengalihan fungsi pembuatan sertifikat ke platform seluler tetap terbuka. Apakah ini perlu?

Versi terbaru dari utilitas cryptoarmpkcs-A untuk platform Android dapat diunduh di sini:

PS Menyimpan log

Untuk membuat paket, gunakan utilitas tulang dari SDK AndroWish. Setelah paket berhasil dibuat, tombol “Instal & jalankan” muncul dan ketika diklik, jendela log terbuka menampilkan output dari adb logcat (Android Debug Bridge logger). Kelemahan dari layar ini adalah sulitnya menemukan pesan kesalahan, terutama jika tanda "V" (verbose) diaktifkan. Oleh karena itu, tombol “Simpan” telah ditambahkan, yang menyimpan log di file /tmp/logBone.txt (kita berbicara tentang Linux):

Menggunakan mekanisme token kriptografi PKCS#11 pada platform Android

Dengan munculnya tombol ini, proses debugging aplikasi menjadi sangat disederhanakan.

Untuk menambahkan tombol, cukup tambahkan kode berikut ke file tulang setelah baris 2591:

	    ttk::button $l.frame.clear -text "Clear" -width 6 
		-command [list adb_logcat_clear $l.text]
#Добавленный код
	    ttk::button $l.frame.save -text "Save" -width 6 
		-command [list adb_logcat_save $l.text]

	    ttk::button $l.frame.run -text "Run" -width 6 
		-command [list adb_logcat_run $l]

Perintah simpan adb_logcat_save terlihat seperti ini:

proc adb_logcat_save {text} {
    set tt [$text get 1.0 end]
    set file "/tmp/logBone.txt"
    file delete -force $file
  #Собственно запись в файл
    set fd [open $file w]
    chan configure $fd -translation binary
    puts -nonewline $fd $tt
    close $fd
}

Sumber: www.habr.com

Tambah komentar