Selamat datang di Know4Share, Tempat Belajar .Net Tecnologies dan Bahasa Pemrograman Lainya- Blog dan Forum Know4Share Untuk saat Ini masih dalam tahap pengembangan, Regard Muhamad Albaijuri-

Cari Artikel

Iklan



Jumat, 26 November 2010

ASP.NET : Deploy ASP.Net di Windows Server 2008 64 Bit

Aplikasi ASP.net yang akan saya deploy ini dibuat dengan Win XP 32 bit dan nantinya akan di jalankan din Win 2k8 Server R2 64 Bit. Karena berjalan di 64 bit berarti semua .net Framework yang ada dalam win2k8 server tersebut juga berjalan di 64bit sedangkan aplikasi ASP.Net yang akan saya deploy masih berjalan di 32bit. ketika aplikasi tersebut sudah saya tempatkan di folder web sharing pada Win2k8 server dan siap untuk dijalankan, ternyata ketika dicoba dijalankan munculan pesan error sebagai berikut :
invalidwin32

Pesan error tersebut dikarenakan .Net Framework yang ada pada Win2k8 Server berjalan pada mode 64 bit, sedangkan aplikasi akan saya deploy berjalan pada .Net Framework 32 bit. Oleh karena itu saya harus mengatur agar .Net Framework pada Win2k8 Server tersebut dapat menjalankan juga aplikasi yang berjalan dengan .Net Framework 32 bit.

Berikut beberap step untuk meng-Enable 32bit application pada .Net Framework di IIS Win2k8 server :
1. Start > Control Panel > Administrative Tools > IIS (Internet Information Service ) Manager atau dengan Short cut > Run + ketikan "inetmgr".
2. Setelah terbuka Window IIS Manager Pilih Localhost, lalu pilih Application Pools.
3. Setelah mengclick Application Polls, disana terdapat beberapa .Net Framework yang telah diinstal di komputer kita untuk menjalankan ASP.Net di IIS. (kali ini saya menggunakan .Net Framework 4.0).
4. Pilih .Net Framework yang digunakan untuk menjalankan Aplikasi kita di IIS Win2k8 Server, Sekedar info Nama DefaultAppPoll merupakan .Net Framework 2.0 yang sudah default terinstal pada IIS 7.
5. Klik kanan , lalu Pilih Advanced Setting. dan munculan sebuah Window pop up setting.
server32bitmode
6. Untuk mengEnable mode 32 bit, ubahlah pada option "Enable 32-bit Application" menjadi True, lalu pilih OK.

Sekarang aplikasinya sudah bisa dijalankan dei Win2k8 Server 64- Bit :D

Bookmark and Share

Selengkapnya...


Sabtu, 13 November 2010

ASP.NET : Mengirim Email dengan SMTP Google (GMAIL)

SMTP (Simple Mail Transfer Protocol) merupakan salah satu protokol yang umum digunakan untuk pengiriman surat elektronik di Internet. Protokol ini dipergunakan untuk mengirimkan data dari komputer pengirim surat elektronik ke server surat elektronik penerima.
Kita dapat menggunakan SMTP account yang ada dari para penyedia layanan email gratis (gmail, yahoo, hotmail .dll) untuk mengirimkan pesan kepada seseorang, dengan catatan kita harus mempunyai akun tersebut.

Dengan menggunakan library "System.Web.Mail" yang tersedia di .Net Framework dan SMTP account dari para penyedia layanan email, kita dapat membuat sebuah aplikasi sederhana baik itu Web Based(asp.net) atau pun dekstop application, yang dapat mengirimkan email tanpa perlu kita mengunjungi web site dan login dengan account kita. mungkin aplikasi ini sangat sedikit berguna apabila suatu saat koneksi internet sedang down dan harus mengirim email.
Berikut adalah screen shot potongan code untuk mengatur SMTP account pada code c#:



Contoh screen Shot aplikasinya(klik untuk memperjelas) :



Dengan aplikasi ini memungkinkan kita juga untuk mengirim sebuah file attachment, hehe sungguh membantu saat koneksi internet sedang lemot.

Screen Shot inbox dalam alamat email yang dikirim :




Untuk lebih belajar lebih lanjut tentang penggunan SMTP protocol pada .Net, silahkan download Source code yang telah di sediakan, disini saya menggunakan C# ASP.net dan Visual Studio 2008


Bookmark and Share

Selengkapnya...


Mengungkap ( Dekrip ) Hash Code yang Di Enkripsi dengan MD5

Sekilas Tentang Message Digest 5 (MD5)

Message Digest 5(MD5) adalah salah satu penggunaan fungsi hash satu arah yang paling banyak digunakan. MD5 merupakan fungsi hash kelima yang dikembangkan oleh Ronald Rivest dan di definisikan pada RFC 1321[10]. MD5 merupakan pengembangan dari MD4 dimana terjadi penambahan satu ronde dalam pemrosesan teks.

MD5 memproses string kedalam blok-blok bit sebanyak 16 buah, keluaran dari MD5 berupa 4 blok yang masing-masing 32bit yang mana akan menjadi 128bit yang biasa disebut hash.

Pada dasarnya MD5 Menghasilkan kode dengan panjang tetap (32 karakter) dari sebuah pesan yang mempunyai panjang yang tidak beraturan. Pesan yang masuk akan dipisah menjadi fragmen-fragmen dengan panjang masing-masing 512bit. Contohnya adalah nilai B, nilai B disini adalah bilangan non negatir integer, dan tidak mesti dapat dibagi oleh kalipatan 8, lalu nilai B diberi bit-bit pengganjal sedemekian rupa sehingga panjang bit kongruen denga modulo 512. Jika panjang pesan B = 320, makan pes an tersebut aka ditambah 512 menjadi 842, jadi panjang bit-bit penganjal ada 1-512 yang digunakan untuk mengganjal pesan B =320 sehinggal dapat dibagi 512.


Pesan tersebut kemudian dimanipulasi sehingga dapat dibagi dengan oleh 512. Proses manipulasi ini menambahkan 1bit ke akhir pesan, lalu menambahkan 0 sampai panjang pesan sama dengan kelipatan 512 dikurangi 64, 64 bit terakhir ini digunakan untuk menyimpan integer dari panjang pesan yang sebenarnya. Algoritma utama MD5 bekerja dalam keaadaan 128 bit, yang dibagi 4, yang masing masing 32bit word, A, B, C, D antra lain :

• A : 01 23 45 67
• B : 89 AB CD EF
• C : FE DC BA 98
• D : 76 54 32 10

mungkin sekian penjelasan singkat dari saya tentang MD5, untuk lebih jelasnya bisa googling aja :D.

sekarang saya ingin menshare sebuah Java source dengan menggunakan metode Brutu Force untuk dapat mengembalikan sebuah string input yang telah di Hash menggunakan MD5, sebenarnya banyaknya metode yang dapat di gukanan untuk mengenkrip MD5, seperti Rainbow Table dll(googling untuk lebih jelasnya :D).

Beberapa kelemahan dari Java code yang di gunakan untuk mendekrip sebuah string hasil enkripsi MD5 :
- Membutuhkan waktu yang sangat lama untuk dapat mengdekrip sebuah password atau string. dari yang saya sudah coba, saya membutuhkan waktu lebih dari 1 jam untuk mengetahui karakter asli yang sudah di enkripsi dengen MD5, namun ada sumber yang menyebutkan, proses ini dapat diselesaikan dengan waktu yang lebih singkat dengan metode Distributing/Paralel Computing, menggunakan resource lebih dari 1 komputer.
- kita tidak tahu berapa panjang karakter asli yang dienkrip menggunakan MD5 ini, karena panjang karakter asli sangat berpengaruh dari hasil dan waktu yang di butuhkan untuk mendekrip.

Java Source Code:

Source Code -Class BrutuForce- :



import java.security.*;
import java.math.*;


public class BruteForce {
char[] karakter = {
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z','0', '1', '2', '3', '4', '5', '6', '7', '8', '9','!','@','#','$','%','^','&','*','(',')','_','+','-','=','[',']','{','}',';',':','\'','"','|','\\',',','.','<','>','?','/',' '
};

String kataYgDicari;
int maxKarakter;
boolean ketemu = false;

public BruteForce(){

}

public BruteForce(String kataYgDicari,int maxKarakter) throws Exception {
int k = 0;
this.kataYgDicari = kataYgDicari;
this.maxKarakter = maxKarakter;

while (k < karakter.length && !ketemu) {
nextString(new Character(karakter[k]).toString());
k++;
}

}

public void cek(String huruf) throws Exception{
System.out.println(huruf);
if(kataYgDicari.equals(md5(huruf))){
ketemu = true;
}
}

private void nextString(String s) throws Exception {

int i = 0;

cek(s);

while (i < karakter.length && !ketemu) {
cek(s + new Character(karakter[i]).toString());

if (new String(s + new Character(karakter[i]).toString()).length() <= maxKarakter) {
nextString(s + new Character(karakter[i]).toString());
}
i++;
}

}

public String md5(String kata) throws Exception{
MessageDigest m=MessageDigest.getInstance("MD5");
m.update(kata.getBytes(),0,kata.length());

String md5 = (new BigInteger(1,m.digest()).toString(16));

if (md5.length() == 31) {
md5 = "0" + md5;
}

return md5;
}
}


Source Code - TessBrutforce - :


import java.io.*;

public class tesBruteForce {
public static void main(String[] args) throws Exception {
try {
InputStreamReader is = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(is);
System.out.print("Masukkan string yang ingin di decode: ");
String md5 = input.readLine();
System.out.print("Masukkan jumlah karakter maksimum untuk brute force: ");
int max = Integer.parseInt(input.readLine());
BruteForce b = new BruteForce(md5, max);

} catch (Exception e) {
System.out.print("Ada kesalahan Masukan");
System.exit(1);
}

}
}



Begini Cara Kerja dari Java Source diatas (Klik untuk memperbesar gambar) :




Sekian sedikit ilmu yang saya share. tolong gunakan ilmu ini dengan bijak dan tidak untuk merugikan orang lain :D

Bookmark and Share

Selengkapnya...


Jumat, 12 November 2010

Download Crystal Report 14 Untuk Visual Studio 2010

Crystal Report tidak lagi menjadi satu dalam installer package Visual Studio 2010, mungkin untuk awan seperti saya hal ini sangat terasa aneh, karena pada versi versi sebelumnya, Visual Studio 2003, 2005 dan Visual Studio 2008 Crystal Report masih setia menemani dalam installer package Visual Studio.

Ketidakberadaan Crystal Report Pada Visual Studi 2010 baru saya sadari ketika saya di beri tugas untuk Mengupgrade sebuah applikasi yang sebelumnya menggunakan Visual Studio 2003 .Net Framework 1.1 menjadi menggunakan Visual Studio 2010 dengan .Net Framework 4.0. memang manjadi sebuah tugas yang lumayan berat juga buat saya, karena ini kali pertama saya menjamah .Net Framework 4.0 dan Visual Studio 2010.

Akhirnya proses convert project berjalan dengan lancar, namun tak selancar yang dipikirkan. karena hal yang tidak terduga terjadi pada saat project yang saya kerjakan ingin di Check In dalam Micrsoft Team Foundation Server(TFS), pada saat itu saya coba untuk mengenerate sebuah report,dan ternyata gagal, saya coba dengan melihat file .Rpt yang ada dalam project, ternyata ketika saya buka file tersebut hanya tampak dalam deretan binary code bukan tampilan desain dari file crystal report. hal tersebut membuat saya panik karena project tersebut harus segera di Check in dalam TFS Server.
Googling pun menjadi jalan terakhir untuk mencari jalan keluar dari permasalan dengan Crystal Report. Ternyata memang Crystal Report di versi 14 tepatnya sudah tidak menjadi 1 dengan package Visual Studi0 2010, melainkan terpisah sehingga kita harus mendownload Crystal Report Enginen(engine untuk mengenerate Report) dan Crystal Report Designer(digunakan untuk membuka RPT file pada Visual Studio sehingga dapat terlihat designer form dari report kita) dari web official SAP, yang dapat di download disini:

http://www.businessobjects.com/jump/xi/crvs2010/us2_default.asp

Disana terdapat dua File yang harus di download:

-Crystal Report Engine(SAP Crystal Report Runtime Engine For .Net Framework 4.0 32 dan 64bit) File ini berisi semua .dll yang di gunakan untuk mengenerate report pada .Net framework 4.0.
-Crystal Report Designer(SAP Crystal Report, Version For Visual Studio 2010) File ini yang harus diinstal untuk dapat membuka .RPT file dan terlihat dalam tampilan Designer Crystal Report

sampai saat ini saya belom mengerti kenapa Microsoft tidak menjadikan 1 package Crystal Report dalam Visual Studio 2010, dan memcahkan dalam SAP, ada yang bisa beri alasanya ?

Bookmark and Share

Selengkapnya...