| Home | | |


Friday, October 13, 2006

Management Group Key dengan Konsep Subkeys dan Pass-phrase part:1

=========================================================
Menu Utama :
1.Menambahkan subkey
2.Memecah Keypair I
3.Mengubah pass-phrase I
4.Memecah Keypair II
5.Mengubah pass-phrase II
6.Memecah Keypair III
7.Pembuatan Keypair baru
8.Import Keypair di anggota group
9.Pengujian pass-phrase
10.Catatan,
=========================================================
Pecobaan pada keypair beridentitas group :
$ gpg --list-key group //pass-phrase : group
pub 1024D/52036D4C 2006-10-12 [expires: 2006-11-11]
uid group company (group)
sub 2048g/9A909C7A 2006-10-12 [expires: 2006-11-11]

Back-Up key untuk menjaga keaslian dan sebagai dekumentasi :
$ gpg --export-secret-key -a 52036D4C > 52036D4C_orig_sec.asc
$ gpg --export -a 52036D4C > 52036D4C_orig_pub.asc

1.Menambahkan subkey
Menambahkan subkey baru untuk DSA (sign only) dengan tujuan untuk dicombine dengan subkey ElGamal (encrypt only) yang sudah ada :
$ gpg --edit-key 52036D4C
Command> addkey
(2) DSA (sign only)

$ gpg --list-key
pub 1024D/52036D4C 2006-10-12 [expires: 2006-11-11]
uid group company (group)
sub 2048g/9A909C7A 2006-10-12 [expires: 2006-11-11]
sub 1024D/381A73C7 2006-10-12 [expires: 2006-11-11]

Back-up key :
$ gpg --export-secret-key -a 52036D4C > 52036D4C_orig_sec1.asc
$ gpg --export -a 52036D4C > 52036D4C_orig_pub1.asc //Public key yg di sebarkan

2.Memecah Keypair I
Memecah Keypair :
$ gpg --export-secret-key 52036D4C |gpgsplit -vp pass
gpgsplit: writing `pass000001-005.secret_key' //primary key dg id 52036D4C
gpgsplit: writing `pass000002-013.user_id'
gpgsplit: writing `pass000003-002.sig'
gpgsplit: writing `pass000004-007.secret_subkey' //subkey dg id 9A909C7A
gpgsplit: writing `pass000005-002.sig'
gpgsplit: writing `pass000006-007.secret_subkey' //subkey dg id 381A73C7
gpgsplit: writing `pass000007-002.sig'

3.Mengubah pass-phrase I
Mengubah pass-phrase :
$ gpg --edit-key 52036D4C
Command> passwd //pass : anggota1

4.Memecah Keypair II
Prefix "pass1" sebagai pass-phrase sign-only :
$ gpg --export-secret-key 52036D4C |gpgsplit -vp pass1
gpgsplit: writing `pass1000001-005.secret_key'
gpgsplit: writing `pass1000002-013.user_id'
gpgsplit: writing `pass1000003-002.sig'
gpgsplit: writing `pass1000004-007.secret_subkey'
gpgsplit: writing `pass1000005-002.sig'
gpgsplit: writing `pass1000006-007.secret_subkey'
gpgsplit: writing `pass1000007-002.sig'

Melihat informasi, bahwa key berikut adalah DSA (sign only)
$ pgpdump pass1000006-007.secret_subkey
Old: Secret Subkey Packet(tag 7)(481 bytes)
Ver 4 - new
Public key creation time - Thu Oct 12 21:26:59 WIT 2006
Pub alg - DSA Digital Signature Algorithm(pub 17)
DSA p(1024 bits) - ...
DSA q(160 bits) - ...
DSA g(1022 bits) - ...
DSA y(1024 bits) - ...
Sym alg - CAST5(sym 3)
Iterated and salted string-to-key(s2k 3):
Hash alg - SHA1(hash 2)
Salt - 6f c9 d3 90 d0 28 a1 90
Count - 65536(coded count 96)
IV - 85 a3 d6 d0 aa 27 a9 41
Encrypted DSA x
Encrypted SHA1 hash

5.Mengubah pass-phrase II
Mengubah pass-phrase untuk ElGamal (Encrypt only):
$ gpg --edit-key 52036D4C
Command> passwd //pass : anggota1-dec

6.Memecah Keypair III
Prefix "pass2" untuk identifikasi pass-phrase ElGamal :
$ gpg --export-secret-key 52036D4C |gpgsplit -vp pass2
gpgsplit: writing `pass2000001-005.secret_key'
gpgsplit: writing `pass2000002-013.user_id'
gpgsplit: writing `pass2000003-002.sig'
gpgsplit: writing `pass2000004-007.secret_subkey'
gpgsplit: writing `pass2000005-002.sig'
gpgsplit: writing `pass2000006-007.secret_subkey'
gpgsplit: writing `pass2000007-002.sig'

Melihat informasi, bahwa key berikut adalah ElGamal (Encrypt only)
$ pgpdump pass2000004-007.secret_subkey
Old: Secret Subkey Packet(tag 7)(611 bytes)
Ver 4 - new
Public key creation time - Thu Oct 12 21:15:02 WIT 2006
Pub alg - ElGamal Encrypt-Only(pub 16)
ElGamal p(2048 bits) - ...
ElGamal g(3 bits) - ...
ElGamal y(2047 bits) - ...
Sym alg - CAST5(sym 3)
Iterated and salted string-to-key(s2k 3):
Hash alg - SHA1(hash 2)
Salt - c2 ad 1f dc 04 c5 c7 5c
Count - 65536(coded count 96)
IV - be 30 c8 7d b8 c7 bb 17
Encrypted ElGamal x
Encrypted SHA1 hash

7.Pembuatan Keypair baru
Pembuatan kunci baru untuk anggota dengan dua pass-phrase berbeda antara untuk tandatangan(sign) dan dekripsi file. File ini yang akan di pakai pada anggota suatu group :
$ cat pass000001-005.secret_key \
pass000002-013.user_id \
pass000003-002.sig \
pass2000004-007.secret_subkey \
pass000005-002.sig \
pass1000006-007.secret_subkey \
pass000007-002.sig > new.anggota.pgp

8.Import Keypair di anggota group
#################################
Import di client anggota1
--------------------------------
$ gpg --import new-anggota.pgp
gpg: key 52036D4C: secret key imported
gpg: key 52036D4C: public key "group company (group) " imported
gpg: Total number processed: 1
gpg: imported: 1
gpg: secret keys read: 1
gpg: secret keys imported: 1
#################################

9.Pengujian pass-phrase
Menguji Digital Signature :
$ date | gpg -u 52036D4C --clearsign

You need a passphrase to unlock the secret key for
user: "group company (group) "
1024-bit DSA key, ID 381A73C7, created 2006-10-12 (main key ID 52036D4C)

Enter passphrase: ******** // pass-phrase adalah : anggota1
---
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Fri Oct 13 04:47:19 WIT 2006
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFFLrfsZEw3gDgac8cRArsVAKCdPjMjMIKR75L3Pg0lyvsU63cXkgCeOXPY
9geFhG1JBXZdEe0rUlJ8VJ8=
=kTgy
-----END PGP SIGNATURE-----

Menguji pass-phrase untuk proses decryption :
$ date | gpg -ear 52036D4C | gpg --decrypt
gpg: 9A909C7A: There is no assurance this key belongs to the named user

pub 2048g/9A909C7A 2006-10-12 group company (group)
Primary key fingerprint: FD3E 59C4 3EC9 2B56 43D6 7934 09BE 9F93 5203 6D4C
Subkey fingerprint: 8751 3D07 69C1 F635 D945 8BC7 B050 344B 9A90 9C7A

It is NOT certain that the key belongs to the person named
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.

Use this key anyway? (y/N) y

You need a passphrase to unlock the secret key for
user: "group company (group) "
2048-bit ELG-E key, ID 9A909C7A, created 2006-10-12 (main key ID 52036D4C)

Enter passphrase: ************ // pass-phrase adalah : anggota1-dec
---
gpg: encrypted with 2048-bit ELG-E key, ID 9A909C7A, created 2006-10-12
"group company (group) "
Fri Oct 13 04:43:42 WIT 2006

10.Catatan
* Untuk pembuatan anggota group yang banyak diperlukan subkey yang cukup pula dan pemberian pass-phrase setiap subkeynya.
* Keuntungan penggunaan metode ini anggota group tidak bisa merubah pass-phrase atau melakukan pengeditan lainya kecuali dia tahu pass-phrase milik primary key. Karena perubahan pass-phrase yang pertama dimintai adalah pass-phrase primary key.
* Admin membagikan key pair baru dengan pass-phrase yang sudah ditentukan.
* Admin memiliki hak akses yang sangat penuh dengan memiliki pass-phrase utama.
* Antar subkey memiliki key yang sama dan penulis masih melakukan research untuk mendapatkan key yang berbeda.

0 comments:

 

Home | Blogging Tips | Blogspot HTML | Make Money | Payment | PTC Review

Denoxcyber © Template Design by Herro | Publisher : Templatemu