vfpencryption.fll: Membuat keygenerator dengan Microsoft Visual Foxpro 9

KeyGenerator biasanya digunakan oleh Developer pemrograman untuk menandai software aplikasi yang telah dijual sesuai dengan nama / identitas pembeli / pemakai / client. KeyGenerator juga merupakan tanda kode registrasi software yang dapat membedakan antara pemakai 1 dan pemakai lainnya.

Berikut saya akan coba menjelaskan teknik pembuatan KeyGenerator dengan menggunakan class pada bahasa pemrograman Microsoft Visual Foxpro. Saya tertarik untuk menuliskan artikel ini mengingat kesulitan yang saya alami sendiri untuk membuat Keygenerator dengan mudah dan simple menggunakan Microsoft Visual Foxpro.

Langkah untuk membuatnya adalah sebagai berikut:

(1) Buatlah sebuah project baru (dalam hal ini sy beri nama vfpkeygen2012)

(2) Buatlah class baru dengan nama myfungsi yang berbasis custom. Kemudian pada bagian store in, ketikkan nama vfpkeygene2012. Klik tombol OK untuk menyimpan class tersebut, maka secara otomatis program akan menampilkan jendela Class Designer.

(3) Kemudian pilih menu Class dari menu utama Foxpro, dan klik submenu New method…


(4) pada jendela New Method tambahkan dua method dengan nama mtd_creategenerator (method untuk membuat keygeneartor) dan mtd_checkgenerator (method untuk menguji keygenerator). Kemudian klik tombol Close untuk menutup jendela New Method. Hasilnya pada jendela Properties vfpkeygen2012 akan terlihat dua method yang telah berhasil dibuat.

(5) kemudian masukkan code dibawah ini pada method myfungsi.mtd_creategenerator

LPARAMETERS tcSecretString
#DEFINE VALID_CHARS "123456789ABCDEFGHJKLMNPQRTUVWXYZ"
#DEFINE RANDOM_LOWER 1
#DEFINE RANDOM_UPPER 32
 
LOCAL lcGibberish, lnChar, lnCount, lcMD5, lcUserLisense
lcGibberish = ""
For lnCount = 1 To 8
    lnChar = Int((RANDOM_UPPER - RANDOM_LOWER + 1) * RAND() + RANDOM_LOWER)
    lcGibberish = lcGibberish + Substr(VALID_CHARS, lnChar, 1)
Next
 
lcMD5 = STRCONV(hash(lcGibberish + tcSecretString, 5),15)
 
lcUserLisense = lcGibberish
 
For lnCount = 1 TO 16
    lnChar = MOD(EVALUATE("0x" + Substr(lcMD5, (lnCount * 2) - 1, 2)), 32)
    lcUserLisense = lcUserLisense + Substr(VALID_CHARS, lnChar + 1, 1)
ENDFOR
 
RETURN (lcUserLisense)

(6) Code dibawah ini pada method myfungsi.mtd_checkgenerator

LPARAMETERS tcEnteredLicense, tcSecretString
#DEFINE VALID_CHARS "123456789ABCDEFGHJKLMNPQRTUVWXYZ"
LOCAL lcGibberish, lcMD5, lcEnteredShouldBe, lnCount, lnChar, llReturn
llReturn = .F.
IF Len(tcEnteredLicense) = 24
	lcGibberish = LEFT(tcEnteredLicense, 8)
	lcMD5 = STRCONV(hash(lcGibberish + tcSecretString, 5),15)
	lcEnteredShouldBe = lcGibberish
 
	FOR lnCount = 1 TO 16
		lnChar = MOD(EVALUATE("0x" + SUBSTR(lcMD5, (lnCount * 2) - 1, 2)), 32)
		lcEnteredShouldBe = lcEnteredShouldBe + SUBSTR(VALID_CHARS, lnChar + 1, 1)
	NEXT
 
	llReturn = lcEnteredShouldBe = tcEnteredLicense
ENDIF
 
RETURN llReturn

(7) Selanjutnya tutup dan simpanlah file class (vfpkeygen2012) yang telah kita buat.

(8) Berikutnya melakukan pengujian, ketikkan perintah berikut ini di jendela perintah (Window Command)

 perintah untuk mengaktifkan library
SET LIBRARY TO LOCFILE("vfpencryption.fll")
 perintah untuk mengaktifkan class
SET CLASSLIB TO vfpkeygen2012
 perintah membuat objekclass
oapp=CREATEOBJECT("myfungsi")
 perintah untuk Membuat Key gen
chasil=oapp.mtd_creategenerator("My_SeCr_et")
 perintah melihat hasil di screen
? chasil
 perintah untuk melakukan pengujian
? oapp.mtd_checkgenerator(chasil,"My_SeCr_et")
 jika mengembalikan nilai .T. berarti kode generator dapat diterima

Yang membuat library ini power full kita dapat menentukan sendiri kode rahasia encrypsi.

selamat mencoba..

catatan: semua coding diambil dari http://www.sweetpotatosoftware.com

link: http://www.sweetpotatosoftware.com/SPSBlog/PermaLink,guid,34321a75-a1fc-4a0e-a9af-17a3c6916d90.aspx

saya hanya melakukan modifikasi dengan menggunakan Class Microsoft Visual Foxpro.

:thumbup

============================
Menyambung tulisan yang diatas..
============================

Sekarang, contoh kasusnya misalnya anda telah membuat sebuah program aplikasi Penggajian yang akan didistribusikan
ke PT. ABC lalu kode secret yang anda gunakan adalah kode serial aplikasi 20110311 dan anto2k sebagai kuncinya.
– Nama perusahaan yang akan diberikan serial key: PT. ABC
– kuncinya: “20110311ANTO2K”

maka coding yang digunakan untuk membuat key generatornya adalah:

cCompany="PT. ABC"
cSerial="20110311"
cauthor="ANTO2K"
cSecretKey=alltrim(cCompany)+cSerial+cauthor
cSerialNumber=oapp.mtd_creategenerator(cSecretKey)

cSerialNumber tersebut kemudian disimpan dalam database, lalu pada saat program dijalan ada prosedur / coding
yang khusus melakukan pengujian serial number ini contohnya:

cUjiSerial=oapp.mtd_checkgenerator(cSerialNumber,cSecretKey)
if cUjiSerial   
   =messagebox("Serial Ok",64,"Informasi")
   *!* prosedur selanjutnya jika OK
else   
   =messagebox("Program ini belum diregistrasi",16,"Larangan")
   *!* prosedur selanjutnya jika tidak OK
endif

demikian smoga bermanfaat
ingin download source? klik disini

0 0 votes
Article Rating
Subscribe
Notify of
guest
CommentLuv badge
[+] kaskus emoticons nartzco

 
What is 10 + 14 ?
Please leave these two fields as-is:
5 Comments
Inline Feedbacks
View all comments
haris
13 years ago

wew..
:thumbup

aryanto
13 years ago

:babyboy1 wew, om haris lama kagak nampil, tq jempolnya.
aryanto´s last blog post ..Ketika KARTINI itu pergi…

Harjuna putra
11 years ago

Izin download Min.
Oh ya.. saya sdh pernah beli buku pak Mimin. Vfp 6.0
Harjuna putra´s last blog post ..MEMBLOK FACEBOOK

online custom writing and editing service sector - check my essay

You know that you inspired me a lot. I am waiting for the next articles! Take it easy!