Laman

Membuat Tanda Tangan digital dengan CA sendiri

 pembuatan tanda tangan digital dengan menggunakan os linux dengan menggunakan aplikasi openssl , firefox dan libreoffice untuk autentifikasinya.

applikasi yang digunakan : openssl

  1. buat CA (Certificate Authority) 
  2. buat permintaan autentifikasi dengan membuat file *.key dan *.csr

membuat CA

buat folder dengan nama CA 
mkdir CA
mkdir CA/certs
mkdir CA/newcerts
mkdir CA/crl

buat file dalam folder CA:
touch index.txt
echo 0000 > index

setelah folder siap copy file openssl.cnf di /etc/ssl/openssl.cnf ke folder CA 

selanjutnya buat file key terlebih dahulu tapi masih dalm folder CA:
openssl genrsa -des3 -passout pass:12345678 -out CA.key 2048
untuk menghilangkan password *.key :
 openssl rsa -passin pass:12345678 -in CA.key -out CA.key

setelah membuat file key kita buat CA root  yang akan menghasilkan file CA.crt nya:

 openssl req -x509 -new -key CA.key -out CA.crt -days 365 

selanjutnya setelah file CA.key berhasil dibuat sekarang setting file config untuk CA dengan mengedit file yang telah kita copy dari openssl config :

edit file openssl.cnf yang berada di dalam folder CA yaitu:

dir = ./CA  (folder ca disimpan)

certificate = $dir/CA.crt 

private_key = $dir/CA.key

default_md = sha256 (ini adalah jenis enskripsi yang akan digunakan)

policy = policy_anything 

setelah mengedit config kita telah memiliki folder yang didalamnya file CA dan selanjutnya kita akan menanda tangani permintaan (*csr) dari client. sebelumnya buat csr dari client terlebih dahulu (cara dibawah)

(masih dalam folder CA)

openssl ca -config openssl.cnf -in client.csr

setelah di tandatangani file yang sudah verifikasi akan berada di folder newcerts dalma bentuk file *.pem

selanjutnya sertifikat yang sudah di setujui dirubah dalam bentuk *.p12 :
openssl pkcs12 -export -in newcerts/00.pem -inkey /path/key/client.key -certfile CA.crt -out newcerts/client.p12

jika berhasil akan menghasilkan file client.p12 di folder newcerts itulah diimport di certifikat manager (apabila sign dengan libreoffice maka import sertifikat p12 tersebut dengan  menggunakan mozilla firefox pada certificate managernya di bagian tab "your certificates" 


membuat CSR untuk client (membuat csr)

pada dasarnya sama dengan membuat CA yaitu membuat file *.key terlebih dahulu selanjutnya membuat file *.csr (certificate sign request) :

buat folder terlebih dahulu agar file yang akan dibuat bisa terkumpul dengan baik:

contoh buat folder client

selanjutnya buat  key:

openssl genrsa -des3 -passout pass:12345678 -out client.key 2048

 atau:

        openssl genrsa -out client.key 4096 


selanjutnya buat file csr dari file key tersebut

openssl req -config openssl.cnf -new -subj '/C=ID/O=tes aja/CN=namaclient' -key /path/key/client.key -out client.csr

atau :

        openssl req -new -key client.key -out client.csr 


selesai.

yang belm adalah check validasi client CA online


--Revisi--
utnuk menandatangani csr client dengan :
  1. openssl x509 -req -in fabrikam.csr -CA  contoso.crt -CAkey contoso.key -CAcreateserial -out fabrikam.crt -days 365 -sha256

cara cek crt apakah sudah ditanda tangani dengan:
openssl x509 -in client.crt -text -noout