Wawan

Reverse File, a simple file encryption

| Poer | visual basic

Dalam membuat sebuah aplikasi, terkadang karena beberapa pertimbangan, kita merasa perlu untuk memproteksi file-file yg dipergunakan oleh aplikasi kita, mungkin karena file tersebut berisi informasi penting yg diperlukan oleh aplikasi seperti username dan password untuk koneksi ke database, atau bahkan file databasenya itu sendiri.

Memang ada banyak cara untuk memproteksi sebuah file, seperti layaknya metode enkripsi lainnya, kita bisa menggunakan berbagai macam algoritma pemrograman yg rumit seperti hashing dan compressing dan lain sebagainya, tapi untuk aplikasi sederhana atau tidak membutuhkan tingkat keamanan yg begitu tinggi, kita bisa menggunakan cara berikut ini.

Algoritma yg digunakan disini sangat sederhana, intinya adalah membalik susunan file tersebut byte per byte, seperti fungsi StrRev-nya vb :razz:

Public Sub ReverseFile(FromFile As String, ToFile As String)
   Dim myByte() As Byte
   Dim ReversedByte() As Byte
   Dim ReverseByte As Long
 
   Open FromFile For Binary As #1
   Open ToFile For Binary As #2
 
   ReDim myByte(1 To LOF(1)) As Byte
   ReDim ReversedByte(1 To LOF(1)) As Byte
   Get #1, , myByte
 
   For ReverseByte = UBound(myByte) To 1 Step -1
       ReversedByte(ReverseByte) = _
          myByte(UBound(myByte) - ReverseByte + 1)
   Next
 
   Put #2, , ReversedByte
   Close #2
   Close #1
End Sub

Contoh implementasinya sebagai berikut, misalkan kita punya sebuah file Microsoft Access ‘data.mdb’ yg kita gunakan sebagai database dari aplikasi kita, nah setelah file ‘data.mdb’ ini kita proteksi menggunakan prosedur diatas, setiap kali ada orang yg mencoba membuka file tsb langsung dari Access, dia hanya akan mendapatkan pop up yg berbunyi ‘Unrecognized file format’ :mrgreen:

Tentunya sebelum dibuka dari aplikasi kita, kita harus membalik kembali file ‘data.mdb’ tadi agar bisa kita baca dari aplikasi kita, berikut cara memanggil prosedur ReverseFile diatas:

Call ReverseFile("C:\Local\data.mdb", "C:\Local\data.mdb")

Related Entries:

Random Entries:

Tinggalkan Komentar Anda