<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SoftHSM with EJBCA - GoBlog</title>
	<atom:link href="https://blog.goreinnamah.com/blog/tag/softhsm-with-ejbca/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.goreinnamah.com</link>
	<description>LOG ALL LOGS</description>
	<lastBuildDate>Mon, 28 Oct 2019 13:45:16 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://blog.goreinnamah.com/wp-content/uploads/2017/01/cropped-1-150x150.jpg</url>
	<title>SoftHSM with EJBCA - GoBlog</title>
	<link>https://blog.goreinnamah.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Integrasi SoftHSM dengan EJBCA 6.10.1.2 di Ubuntu Server 16.04/18.04</title>
		<link>https://blog.goreinnamah.com/blog/2019/10/28/softhsm-dan-ejbca-6-10-1-2-di-ubuntu-server/</link>
					<comments>https://blog.goreinnamah.com/blog/2019/10/28/softhsm-dan-ejbca-6-10-1-2-di-ubuntu-server/#comments</comments>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Mon, 28 Oct 2019 13:33:31 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[SoftHSM]]></category>
		<category><![CDATA[SoftHSM with EJBCA]]></category>
		<category><![CDATA[SoftHSM with Ubuntu 16.04]]></category>
		<category><![CDATA[SoftHSM with Ubuntu 18.04]]></category>
		<category><![CDATA[SoftHSM2]]></category>
		<guid isPermaLink="false">https://blog.goreinnamah.com/?p=4077</guid>

					<description><![CDATA[<p>Harga HSM (Hardware Security Module) yang mahal membuat tidak semua perusahaan, institusi, atau perseorangan mampu membelinya dan mengimplementasikannya untuk mengamankan[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2019/10/28/softhsm-dan-ejbca-6-10-1-2-di-ubuntu-server/">Integrasi SoftHSM dengan EJBCA 6.10.1.2 di Ubuntu Server 16.04/18.04</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Harga <strong>HSM <em>(Hardware Security Module)</em></strong> yang mahal membuat tidak semua perusahaan, institusi, atau perseorangan mampu membelinya dan mengimplementasikannya untuk mengamankan (seperti untuk enkripsi, dekripsi, autentikasi, dll) data sensitif yang mereka miliki. Untung saja di dunia ini masih banyak orang baik yang suka <em>ngoprek </em>dan dari <em>oprekan </em>tersebut hadirlah sesuatu yang bernama <strong>SoftHSM</strong> sebagai salah satu solusi &#8220;murah&#8221; untuk mengatasi harga HSM yang &#8220;mahal&#8221; itu.</p>
<p style="text-align: justify;">Apa sih SoftHSM itu? SoftHSM <em>(Software Implementation of HSM)</em> merupakan bagian dari proyek <strong>OpenDNSSEC</strong> yang menghadirkan HSM tapi dalam bentuk <em>software. </em>Aneh, kan? Jelas aneh, karena &#8220;H&#8221; dalam HSM itu merupakan singkatan dari <strong>Hardware</strong> tapi SoftHSM ini justru hadir sebagai perangkat lunak. Namun begitulah adanya.</p>
<ul style="text-align: justify;">
<li><strong><em>Baca Juga: <a href="https://blog.goreinnamah.com/blog/2019/10/21/integrasi-luna-network-hsm-7-0/">Integrasi HSM Luna Network 7.0 dengan EJBCA 6.10.1.2 pada CentOS 7</a></em></strong></li>
</ul>
<p style="text-align: justify;">SoftHSM ini pada dasarnya memiliki fungsi yang sama dengan HSM pada umumya, seperti <em>generate keys, </em><em>signing data, </em>enkripsi, dekripsi, dll. Hanya saja, yang mungkin tidak disediakan oleh SoftHSM ini adalah perlindungan keamanan terhadap <em>hardware </em>tempat ia dipasang seperti perlindungan yang dilakukan oleh HSM sebenarnya.</p>
<p style="text-align: justify;">Baiklah, sudah cukup perkenalannya soal SoftHSM, sisanya bisa kalian baca di situsnya langsung. Sekarang waktunya masuk ke tujuan utama dari tulisan ini.</p>
<p style="text-align: justify;">Bekerja dalam sebuah proyek <strong>CA (Certification Authority)</strong>, saya pun menjadi cukup akrab dengan HSM. HSM ini saya gunakan untuk mengamankan <em>keys </em>yang saya terbitkan, serta untuk mengamankan transaksi yang terjadi ketika ada proses <em>signing. </em></p>
<ul style="text-align: justify;">
<li><strong><em>Baca Juga: <a href="https://blog.goreinnamah.com/blog/2018/03/02/hsm-luna-7-dan-centos-7-dengan-ntl/">Cara Menghubungkan HSM Luna Network 7.0 dan CentOS 7 dengan NTL</a></em></strong></li>
</ul>
<p style="text-align: justify;">Dan pada kesempatan kali ini, saya ingin membagikan informasi mengenai cara untuk mengintegrasikan SoftHSM dengan EJBCA sebagai <em>software </em>yang saya gunakan di atas Ubuntu Server 16.04 (bisa juga diimplementasikan di Ubuntu Server 18.04)</p>
<h3 style="text-align: justify;"><strong>Alat dan Bahan</strong></h3>
<ol style="text-align: justify;">
<li>Ubuntu Server 16.04 yang sudah terpasang EJBCA 6.10.1.2 (Cara install EJBCA bisa dilihat <a href="https://blog.goreinnamah.com/blog/2017/10/06/instalasi-ejbca-6-5-0-5-pada-jboss-eap-6-4-di-ubuntu-16-04/"><strong>DI SINI</strong></a>)</li>
<li>SoftHSM 2.5.0 (Download <a href="https://dist.opendnssec.org/source/softhsm-2.5.0.tar.gz"><strong>DI SINI</strong></a>)</li>
<li>Koneksi Internet</li>
<li>Beer (Biar segar)</li>
</ol>
<h3 style="text-align: justify;"><strong>Tahap 1</strong></h3>
<ol style="text-align: justify;">
<li style="text-align: justify;">Meskipun SoftHSM tersedia dalam repositori milik Ubuntu, tapi saya lebih memilih untuk melakukan instalasinya secara manual lewat tarball. Mengapa? Karena saat saya mencoba memasang SoftHSM lewat perintah <em>apt install </em>dan melanjutkan konfigurasinya, terjadi banyak sekali <em>error.<br />
</em>Untuk mengunduh versi tarball dari SoftHSM, jalankan perintah berikut:</p>
<pre><span style="color: #ff0000;"><strong>sudo wget -c <span style="color: #000000;">https://dist.opendnssec.org/source/softhsm-2.5.0.tar.gz</span></strong></span></pre>
<p><figure id="attachment_4085" aria-describedby="caption-attachment-4085" style="width: 1320px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="size-full wp-image-4085" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/11-install-softhsm-2.5.0.png" alt="" width="1320" height="189" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/11-install-softhsm-2.5.0.png 1320w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/11-install-softhsm-2.5.0-300x43.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/11-install-softhsm-2.5.0-768x110.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/11-install-softhsm-2.5.0-1024x147.png 1024w" sizes="(max-width: 1320px) 100vw, 1320px" /><figcaption id="caption-attachment-4085" class="wp-caption-text">Downloading SoftHSM 2.5.0 dengan wget</figcaption></figure></li>
<li style="text-align: justify;">Kalau sudah diunduh, silakan lakukan proses ekstraksi pada file tarball tersebut dengan dan masuk ke dalam <em>folder </em>hasil ekstraksi tersebut dengan perintah:
<pre><strong><span style="color: #ff0000;">sudo tar -zxvf</span> softhsm-2.5.0.tar.gz
<span style="color: #ff0000;">cd</span> softhsm-2.5.0</strong></pre>
<p><figure id="attachment_4086" aria-describedby="caption-attachment-4086" style="width: 551px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-4086" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/12-softhsm2-extract.png" alt="" width="551" height="532" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/12-softhsm2-extract.png 551w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/12-softhsm2-extract-300x290.png 300w" sizes="(max-width: 551px) 100vw, 551px" /><figcaption id="caption-attachment-4086" class="wp-caption-text">Proses ekstrak paket SoftHSM 2.5.0</figcaption></figure></li>
<li style="text-align: justify;">Eksekusi file <em>configure</em> dengan perintah:
<pre><strong><span style="color: #ff0000;">sudo</span> ./configure</strong></pre>
<p><figure id="attachment_4087" aria-describedby="caption-attachment-4087" style="width: 569px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-4087" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/7-configure.png" alt="" width="569" height="533" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/7-configure.png 569w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/7-configure-300x281.png 300w" sizes="(max-width: 569px) 100vw, 569px" /><figcaption id="caption-attachment-4087" class="wp-caption-text">./configure</figcaption></figure></li>
<li>Ekskusi <em>configure </em>bertujuan untuk menjalankan <em>script </em>yang akan memeriksa dependensi dari <em>software </em>SoftHSM.</li>
<li style="text-align: justify;">Saat mengeksekusi file <em>configure, </em>(mungkin) kalian mendapatkan <em>error </em>seperti ini:
<pre><strong><span style="color: #ff0000;">configure: error: Can't find OpenSSL headers</span></strong></pre>
<p><figure id="attachment_4088" aria-describedby="caption-attachment-4088" style="width: 370px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4088" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/8-openssl-headers-problem.png" alt="" width="370" height="94" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/8-openssl-headers-problem.png 370w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/8-openssl-headers-problem-300x76.png 300w" sizes="auto, (max-width: 370px) 100vw, 370px" /><figcaption id="caption-attachment-4088" class="wp-caption-text">Can&#8217;t find OpenSSL headers</figcaption></figure></li>
<li style="text-align: justify;"><em>Error</em> tersebut terjadi karena belum dipasangnya <em>library  </em><strong>libssl-dev. </strong>Untuk memasangnya, jalankan perintah di bawah ini dan setelahnya kembali jalankan peritah <strong><em>./configure</em></strong>:
<pre><strong><span style="color: #ff0000;">sudo apt install</span> libssl-dev</strong></pre>
<p><figure id="attachment_4089" aria-describedby="caption-attachment-4089" style="width: 1098px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4089" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/9-libssl-dev.png" alt="" width="1098" height="517" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/9-libssl-dev.png 1098w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/9-libssl-dev-300x141.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/9-libssl-dev-768x362.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/9-libssl-dev-1024x482.png 1024w" sizes="auto, (max-width: 1098px) 100vw, 1098px" /><figcaption id="caption-attachment-4089" class="wp-caption-text">instalasi libssl-dev</figcaption></figure></li>
<li style="text-align: justify;">Setelah melakukan instalasi <em>libssl-dev </em>dan kembali mengeksekusi file <em>configure, </em>kalian akan kembali mendapatkan pesan <em>error </em>yang kali ini berbunyi:
<pre><span style="color: #ff0000;"><strong>configure: error: OpenSSL library has no GOST support</strong></span></pre>
<p><figure id="attachment_4093" aria-describedby="caption-attachment-4093" style="width: 529px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4093" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/10-openssl-problem-solved.png" alt="" width="529" height="92" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/10-openssl-problem-solved.png 529w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/10-openssl-problem-solved-300x52.png 300w" sizes="auto, (max-width: 529px) 100vw, 529px" /><figcaption id="caption-attachment-4093" class="wp-caption-text">OpenSSL Library has no GOST support</figcaption></figure></li>
<li style="text-align: justify;"><em>Error </em>di atas terjadi karena <em>engine GOST </em>sudah kadaluarsa. Oleh sebab itu OpenSSL versi 1.1.0 atau lebih, sudah tidak lagi menyertakan <em>engine GOST </em>di dalamnya. Untuk &#8220;membuang&#8221; GOST saat mengkesekusi file <em>configure, </em>jalankan perintah berikut:
<pre><strong><span style="color: #ff0000;">sudo ./configure --disable-gost</span></strong></pre>
<p><figure id="attachment_4094" aria-describedby="caption-attachment-4094" style="width: 597px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4094" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/14-configure-without-GOST.png" alt="" width="597" height="584" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/14-configure-without-GOST.png 597w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/14-configure-without-GOST-300x293.png 300w" sizes="auto, (max-width: 597px) 100vw, 597px" /><figcaption id="caption-attachment-4094" class="wp-caption-text">configure without ghost</figcaption></figure></li>
<li style="text-align: justify;">Usai menjalankan perintah tersebut, konfigurasi akan berjalan dengan baik. Untuk melihat opsi apa saja yang disediakan ketika ingin mengeksekusi file <em>configure, </em>jalankan perintah:
<pre><span style="color: #ff0000;"><strong>sudo ./configure --help</strong></span></pre>
<p>Dan banyak opsi akan bermunculan</li>
<li>Sekarang waktunya untuk meng-<em>compile </em><em>source code </em>dari SoftHSM. Caranya adalah dengan menjalankan perintah:
<pre><span style="color: #ff0000;"><strong>sudo make</strong></span></pre>
<figure id="attachment_4097" aria-describedby="caption-attachment-4097" style="width: 1352px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4097" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/17-make-softhsm2.png" alt="" width="1352" height="626" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/17-make-softhsm2.png 1352w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/17-make-softhsm2-300x139.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/17-make-softhsm2-768x356.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/17-make-softhsm2-1024x474.png 1024w" sizes="auto, (max-width: 1352px) 100vw, 1352px" /><figcaption id="caption-attachment-4097" class="wp-caption-text">make</figcaption></figure>
<p>Proses <em>compile </em>ini akan memakan waktu cukup lama. SIlakan tunggu hingga prosesnya selesai.</li>
<li>Setelah proses <em>compile </em>selesai, jalankan perintah berikut untuk meng-<em>install </em>SoftHSM
<pre><span style="color: #ff0000;"><strong>sudo make install</strong></span></pre>
<figure id="attachment_4098" aria-describedby="caption-attachment-4098" style="width: 730px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4098" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/19-make-install.png" alt="" width="730" height="611" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/19-make-install.png 730w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/19-make-install-300x251.png 300w" sizes="auto, (max-width: 730px) 100vw, 730px" /><figcaption id="caption-attachment-4098" class="wp-caption-text">make install</figcaption></figure>
<p>Kali ini prosesnya tidak akan lebih lama dari proses <em>compile. </em>Sama halnya seperti proses <em>compile, </em>biarkan proses instalasi ini berjalan hingga selesai.</li>
</ol>
<h3 style="text-align: justify;"><strong>Tahap Kedua</strong></h3>
<p style="text-align: justify;">Selanjutnya adalah inisialisasi <em>soft token. </em>Perintah yang digunakan untuk inisialisasi tersebut adalah <strong>softhsm2-util. </strong>Berikut ini adalah perintah lengkapnya:</p>
<pre><span style="color: #000000;"><strong><span style="color: #ff0000;">softhsm2-util --init-token --free --label</span> &lt;text&gt;</strong></span></pre>
<div class="mceTemp" style="text-align: justify;"></div>
<figure id="attachment_4102" aria-describedby="caption-attachment-4102" style="width: 621px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4102" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/28-slot-saya-add.png" alt="" width="621" height="153" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/28-slot-saya-add.png 621w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/28-slot-saya-add-300x74.png 300w" sizes="auto, (max-width: 621px) 100vw, 621px" /><figcaption id="caption-attachment-4102" class="wp-caption-text">Menambahkan token dengan label &#8220;slotsaya&#8221;</figcaption></figure>
<p style="text-align: justify;">Karena tidak didefinisikan di awal, ketika perintah tersebut dieksekusi, maka kalian akan diminta untuk memasukkan PIN untuk user dan SO. SO (Security Officer) PIN digunakan untuk menginisialisasi ulang token, sedangkan User PIN akan &#8220;diberikan&#8221; ke dalam aplikasi sehingga aplikasi bisa berinteraksi dengan SoftHSM lewat token. Itulah mengapa kalian harus mengatur SO dan User PIN.</p>
<p style="text-align: justify;">Minimal PIN yang bisa kalian masukkan adalah 4 karakter, sedangkan maksmimalnya adalah 255 karakter, jadi silakan tentukan sendiri ya. Perintah <strong><em>free </em></strong>bertujuan untuk langsung menggunakan token yang belum terinisialisasi.</p>
<p style="text-align: justify;">Setelah token ditambahkan, slot baru akan muncul secara otomatis sebagai token yang belum terinisiasi. Token yang sudah diinisialisasi akan dipindahkan ke slot lain berdasarkan nomor seri token. Untuk itu, bila kamu ingin berinteraksi dengan token, carilah <em>token label</em>-nya.</p>
<p style="text-align: justify;">Mari kita lanjutkan. Karena saya ingin menggunakan 2 slot, maka saya akan menginisalisasi <em>soft token </em>lainnya di slot yang berbeda. Kalau tadi <em>token label-</em>nya adalah <strong>slotsaya, </strong>maka <em>token label </em>di slot berikutnya akan saya beri nama <strong>softhsm-test. </strong>Caranya:</p>
<pre><span style="color: #000000;"><strong><span style="color: #ff0000;">softhsm2-util --init-token --slot</span> &lt;nilai_slot&gt; <span style="color: #ff0000;">--token</span> &lt;label&gt; <span style="color: #ff0000;">--label</span> &lt;text&gt; <span style="color: #ff0000;">--pin</span> &lt;User_PIN&gt; <span style="color: #ff0000;">--so-pin</span> &lt;Security_Officer_PIN&gt;</strong></span>
<span style="color: #ff0000;"><strong>softhsm2-util --show-slots</strong></span></pre>
<figure id="attachment_4101" aria-describedby="caption-attachment-4101" style="width: 1183px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4101" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/26-1.png" alt="" width="1183" height="609" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/26-1.png 1183w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/26-1-300x154.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/26-1-768x395.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/26-1-1024x527.png 1024w" sizes="auto, (max-width: 1183px) 100vw, 1183px" /><figcaption id="caption-attachment-4101" class="wp-caption-text">Inisialisasi Soft Token</figcaption></figure>
<p style="text-align: justify;">Karena sudah didefinsikan di awal, kalian tidak akan diminta untuk memasukkan lagi PIN untuk User dan SO. Perintah <em><strong>softhsm2-util &#8211;show-slots </strong></em>bertujuan untuk menunjukkan slot yang tersedia sekaligus menunjukkan token yang berhasil diinisialisasi. Jadi sekarang ada 2 slot yang siap untuk digunakan.</p>
<p style="text-align: justify;">Untuk melihat opsi apa saja yang bisa kalian tempelkan pada perintah <em><strong>softhsm2-util,</strong> </em>berikut adalah pilihan lengkapnya:</p>
<figure id="attachment_4104" aria-describedby="caption-attachment-4104" style="width: 661px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4104" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/37-help.png" alt="" width="661" height="613" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/37-help.png 661w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/37-help-300x278.png 300w" sizes="auto, (max-width: 661px) 100vw, 661px" /><figcaption id="caption-attachment-4104" class="wp-caption-text">opsi untuk ditempelkan dengan perintah softhsm2-util</figcaption></figure>
<h3 style="text-align: justify;"><strong>Tahap Ketiga</strong></h3>
<p style="text-align: justify;">Untuk berinteraksi dengan atau menguji SoftHSM, kali ini saya akan menggunakan <em>interface </em>PKCS11 dari OpenSC. Untuk bisa menggunakan OpenSC, Kalian terlebih dulu harus memasangnya. Jalankan perintah berikut untuk memasang OpenSC pada Ubuntu Server:</p>
<pre><strong><span style="color: #ff0000;">sudo apt-get install</span> opensc</strong></pre>
<figure id="attachment_4105" aria-describedby="caption-attachment-4105" style="width: 959px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4105" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/22-install-opensc.png" alt="" width="959" height="611" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/22-install-opensc.png 959w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/22-install-opensc-300x191.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/22-install-opensc-768x489.png 768w" sizes="auto, (max-width: 959px) 100vw, 959px" /><figcaption id="caption-attachment-4105" class="wp-caption-text">instalasi opensc</figcaption></figure>
<p style="text-align: justify;">Dan untuk mengujinya, jalankan perintah berikut:</p>
<pre><span style="color: #ff0000;"><strong>pkcs11-tool --module /usr/local/lib/softhsm/libsofthsm2.so -l -t</strong></span></pre>
<figure id="attachment_4106" aria-describedby="caption-attachment-4106" style="width: 761px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4106" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/23-softhsm-test-with-pkcs11.png" alt="" width="761" height="298" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/23-softhsm-test-with-pkcs11.png 761w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/23-softhsm-test-with-pkcs11-300x117.png 300w" sizes="auto, (max-width: 761px) 100vw, 761px" /><figcaption id="caption-attachment-4106" class="wp-caption-text">testing token</figcaption></figure>
<p style="text-align: justify;">Opsi <strong>-t </strong>adalah opsi yang digunakan untuk menguji. Dari gambar di atas, terlihat kalau <em>testing </em>yang dilakukan berhasil.</p>
<h3 style="text-align: justify;"><strong>Tahap Keempat</strong></h3>
<p style="text-align: justify;">Sekarang adalah waktunya untuk mengintegrasikan dengan EJBCA. Setelah membuat 2 token di dua slot yang berbeda, <em>restart service </em>EJBCA kalian.</p>
<p style="text-align: justify;">Jika sudah, akses halaman <em>administrator EJBCA </em>lewat <em>browser. </em>Masuk ke <strong>CA Functions → Crypto Token → Create New →</strong> <em>fill it <strong>→ Save</strong></em><strong> .</strong></p>
<p style="text-align: justify;">Pada tahap ini, kalian akan menerbitkan <em>crypto token </em>dengan nama <strong>Test </strong>yang memanfaatkan slot dengan label <strong>softhsm-test.</strong></p>
<p style="text-align: justify;">Isikan <em>field </em>yang ada seperti berikut:</p>
<p style="text-align: justify;">
<table id="tablepress-14" class="tablepress tablepress-id-14">
<tbody class="row-striping row-hover">
<tr class="row-1">
	<td class="column-1">Name</td><td class="column-2">testing</td>
</tr>
<tr class="row-2">
	<td class="column-1">Type</td><td class="column-2">PKCS#11</td>
</tr>
<tr class="row-3">
	<td class="column-1">Authentication Code</td><td class="column-2">*************</td>
</tr>
<tr class="row-4">
	<td class="column-1">Repeat Authentication Code</td><td class="column-2">*************</td>
</tr>
<tr class="row-5">
	<td class="column-1">Auto Activation </td><td class="column-2">checked</td>
</tr>
<tr class="row-6">
	<td class="column-1">PKCS#11: Library </td><td class="column-2">SoftHSM2</td>
</tr>
<tr class="row-7">
	<td class="column-1">PKCS#11: Reference Type</td><td class="column-2">Slot/Token Label</td>
</tr>
<tr class="row-8">
	<td class="column-1">PKCS#11: Reference</td><td class="column-2">softhsm-test</td>
</tr>
<tr class="row-9">
	<td class="column-1">PKCS#11: Attribute File</td><td class="column-2">Default</td>
</tr>
</tbody>
</table>
<!-- #tablepress-14 from cache --></p>
<figure id="attachment_4118" aria-describedby="caption-attachment-4118" style="width: 1103px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4118" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-1-2.png" alt="" width="1103" height="566" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-1-2.png 1103w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-1-2-300x154.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-1-2-768x394.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-1-2-1024x525.png 1024w" sizes="auto, (max-width: 1103px) 100vw, 1103px" /><figcaption id="caption-attachment-4118" class="wp-caption-text">Menambahkan Crypto Token yang baru (dalam hal ini menggunakan Token label softhsm-test)</figcaption></figure>
<p style="text-align: justify;">Berikutnya silakan tambahkan pasangan kunci sesuai yang kalian butuhkan. Pada contoh kali ini saya menambahkan <em><strong>CAEncryptKey, CASignKey, </strong></em>dan <em><strong>CATestKey </strong></em>dengan panjang ketiganya 4096.</p>
<figure id="attachment_4113" aria-describedby="caption-attachment-4113" style="width: 982px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4113" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/33-creating-another-key.png" alt="" width="982" height="505" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/33-creating-another-key.png 982w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/33-creating-another-key-300x154.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/33-creating-another-key-768x395.png 768w" sizes="auto, (max-width: 982px) 100vw, 982px" /><figcaption id="caption-attachment-4113" class="wp-caption-text">crypto token baru bernama testing dengan rincian seperti di atas</figcaption></figure>
<h3 style="text-align: justify;"><strong>Tahap Kelima</strong></h3>
<p style="text-align: justify;">Untuk membuat <em>Crypto Token </em>yang baru, kembali ulangi tahapan yang sama yaitu <strong>CA Functions → Crypto Token → Create New →</strong> <em>fill it <strong>→ Save</strong></em><strong>. </strong>Kali ini yang akan dibuat adalah <em>crypto token </em>dengan nama <strong>Testing </strong>yang memanfaatkan slot bernama <strong>slotsaya. </strong></p>
<p style="text-align: justify;">
<table id="tablepress-15" class="tablepress tablepress-id-15">
<tbody class="row-striping row-hover">
<tr class="row-1">
	<td class="column-1">Name</td><td class="column-2">testing</td>
</tr>
<tr class="row-2">
	<td class="column-1">Type</td><td class="column-2">PKCS#11</td>
</tr>
<tr class="row-3">
	<td class="column-1">Authentication Code</td><td class="column-2">*************</td>
</tr>
<tr class="row-4">
	<td class="column-1">Repeat Authentication Code</td><td class="column-2">*************</td>
</tr>
<tr class="row-5">
	<td class="column-1">Auto Activation </td><td class="column-2">checked</td>
</tr>
<tr class="row-6">
	<td class="column-1">PKCS#11: Library </td><td class="column-2">SoftHSM2</td>
</tr>
<tr class="row-7">
	<td class="column-1">PKCS#11: Reference Type</td><td class="column-2">Slot/Token Label</td>
</tr>
<tr class="row-8">
	<td class="column-1">PKCS#11: Reference</td><td class="column-2">slotsaya</td>
</tr>
<tr class="row-9">
	<td class="column-1">PKCS#11: Attribute File</td><td class="column-2">Default</td>
</tr>
</tbody>
</table>
<!-- #tablepress-15 from cache --></p>
<figure id="attachment_4120" aria-describedby="caption-attachment-4120" style="width: 682px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4120" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-sukses.png" alt="" width="682" height="401" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-sukses.png 682w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/31-sukses-300x176.png 300w" sizes="auto, (max-width: 682px) 100vw, 682px" /><figcaption id="caption-attachment-4120" class="wp-caption-text">Crypto Token berhasil dibuat</figcaption></figure>
<p style="text-align: justify;">Berikutnya silakan tambahkan pasangan kunci sesuai yang kalian butuhkan. Pada contoh kali ini saya menambahkan <em><strong>root</strong><strong>EncryptKey, rootSignKey, </strong></em>dan <em><strong>root</strong><strong>TestKey </strong></em>dengan panjang ketiganya 4096.</p>
<figure id="attachment_4119" aria-describedby="caption-attachment-4119" style="width: 977px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4119" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/32-creating-key.png" alt="" width="977" height="500" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/32-creating-key.png 977w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/32-creating-key-300x154.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/32-creating-key-768x393.png 768w" sizes="auto, (max-width: 977px) 100vw, 977px" /><figcaption id="caption-attachment-4119" class="wp-caption-text">Crypto Token berhasil dibuat</figcaption></figure>
<p style="text-align: justify;">Kalau dilihat di <em>dashboard, </em>maka <em>crypto token </em>yang berhasil dibuat adalah seperti berikut:</p>
<figure id="attachment_4122" aria-describedby="caption-attachment-4122" style="width: 872px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4122" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/34-1-1.png" alt="" width="872" height="575" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/34-1-1.png 872w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/34-1-1-300x198.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/34-1-1-768x506.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/34-1-1-120x80.png 120w" sizes="auto, (max-width: 872px) 100vw, 872px" /><figcaption id="caption-attachment-4122" class="wp-caption-text">crypto token test dan testing berhasil dibuat</figcaption></figure>
<figure id="attachment_4124" aria-describedby="caption-attachment-4124" style="width: 1337px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4124" src="https://blog.goreinnamah.com/wp-content/uploads/2019/10/35-adding-CA.png" alt="" width="1337" height="487" srcset="https://blog.goreinnamah.com/wp-content/uploads/2019/10/35-adding-CA.png 1337w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/35-adding-CA-300x109.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/35-adding-CA-768x280.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2019/10/35-adding-CA-1024x373.png 1024w" sizes="auto, (max-width: 1337px) 100vw, 1337px" /><figcaption id="caption-attachment-4124" class="wp-caption-text">Contoh penggunaan Crypto Token Test pada pembuatan CA</figcaption></figure>
<h3 style="text-align: justify;"><strong>Tambahan</strong></h3>
<p style="text-align: justify;">Semua file konfigurasi mengenai SoftHSM ini bisa kalian temukan di <strong><em>/etc/softhsm2.conf. </em></strong>Untuk melakukan <em>backup </em>terhadap semua token dan objek yang sudah dibuat, kalian bisa melakukan <em>copy </em>seperti <em>copy </em>file biasa pada lokasi yang sudah didefinisikan di <em><strong>softhsm2.conf.</strong></em></p>
<p style="text-align: center;"><strong>*****</strong></p>
<p style="text-align: justify;">Itu tadi sedikit <em>sharing </em>mengenai integrasi antara SoftHSM2 dengan EJBCA 6.10.1.2 yang berjalan di atas Ubuntu Server 16.04. Semoga informasi di atas bisa berguna ya. Mau diimplementasikan di <em>production </em>monggo, kalau <em>nggak </em>juga tidak masalah <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p><p>The post <a href="https://blog.goreinnamah.com/blog/2019/10/28/softhsm-dan-ejbca-6-10-1-2-di-ubuntu-server/">Integrasi SoftHSM dengan EJBCA 6.10.1.2 di Ubuntu Server 16.04/18.04</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://blog.goreinnamah.com/blog/2019/10/28/softhsm-dan-ejbca-6-10-1-2-di-ubuntu-server/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Object Caching 0/197 objects using Memcached
Page Caching using Disk: Enhanced 
Database Caching using Memcached (Request-wide modification query)

Served from: blog.goreinnamah.com @ 2026-10-07 09:23:23 by W3 Total Cache
-->