Rabu, 22 Mei 2013

[Android] eclipse gagal generated R.java

Hi, hi.. hari ini mau tulis kenapa file R.java yang biasanya digenerate eclipse tidak digenerate. Ini biasa terjadi pada project android, yang tiba-tiba error dikarenakan keyword-keyword yang ada pada file xml tidak tergenerate.
Untuk mengatasinya ada yang menyarankan untuk clean project, yakni ada di menu
Project -> Clean... -> <<Pilih project yang akan diclean>>  -> Ok

Tapi kadang ini tidak berhasil, lalu secara tidak sengaja saya menemukan caranya yakni menghapus folder .metadata yang ada pada folder workspace.
Setelah dihapus, buka eclipsenya kembali. Dan akhirnya bisa :senyum.

Oh ya ini saya ketemu dengan sendirinya, jadi gak bisa nunjukin link sumbernya ya. Kalau ada yang salah mohon dikoreksi. 
Salam bloger. Wassalam

Senin, 20 Mei 2013

[Ubuntu] php5 di public html

Hari ini mau tulis tentang setting php5 di pubic html. Ini gw coba pada ubuntu terbaru yakni 13.04. Awalnya agak terkejut, karena biasanya jika kita sudah install php5, apache2, lalu setting public_html, tidak ada masalah. Tapi ini aneh karena, terkesan file php yang ditaruh di public_html tidak di render oleh browser.
Akhirnya tanya mbah google, ketemu link mantep. Install php5, lalu jalankan command seperti di bawah ini.
sudo  a2enmod php5
sudo vim /etc/apache2/mods-available/php5.conf

Selasa, 14 Mei 2013

[Ubuntu] Kirim email melalui terminal

Hi, hi,,, uda lama banget ya gak ngoprek-ngoprek. Hari ini mau tulis cara kirim email melalui terminal. Mungkin terdengar norak sih, tp ini biasa dilakukan para admin, untuk mengetahui apakah server mereka down, atau terjadi hal-hal yang tidak inginkan. 
Oh, iya ini saya lakukan pada os linux ubuntu ya. Hal yang pertama kali kita lakukan adalah install aplikasinya, yakni ssmtp.
sudo apt-get install ssmtp
Lalu kita edit file ssmtp.conf, ada di folder /etc/ssmtp/
root=ardiagung@gmail.com
mailhub=smtp.gmail.com:465
rewriteDomain=gmail.com
AuthUser=ardiagung
AuthPass=password
FromLineOverride=YES
UseTLS=YES

Kamis, 18 April 2013

[android] Scroll horizontal dan vertical

Hi, hari ini mau tulis scroll horizontal dan vertical di android. Lansung aja ke code ya. Pertama - tama kita buat dulu custom scroll untuk yang vertical (VScroll.java) dan horizontal (HScroll.java).

package ardi.fisika6.util;

import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.HorizontalScrollView;


Kamis, 11 April 2013

Push Code ke Github

Hari ini mau tulis cara push code ke github. Langkah awal pastinya harus punya account di github dulu ya :senyum. Buat repo dulu di github, lalu dipush dari client.
Langkah - langkah pembuatan repo di github
1. Klik new repository, lalu akan muncul form seperti gambar dibawah ini.

2. Setelah dibuat akan muncul window seperti dibawah ini, nah pilih ssh. Karna sampe sekarang gw belum bisa push via https :hammer.

Senin, 08 April 2013

Foreignkey postgresql

Sore ini mau tulis hal yang simple tapi kadang bisa terlupa, yakni foreignkey di postgresql. Prinsipnya sama dengan yang lain.

Misalnya kita buat 2 table (a_table & b_table). Jadi b_table punya column yang jadi reference ke table a_table.

CREATE TABLE a_table (id bigint primary key, name varchar(20));
Hasilnya seperti gambar di bawah ini

CREATE TABLE b_table (id bigint primary key, name varchar(20), id_a bigint references a_table(id));
Hasilnya seperti gambar di bawah ini

Jumat, 05 April 2013

Cipher based MAC (CMAC) C code

Hari ini mau tulis tentang CMAC dan sekalian share codenya jg :senyum. CMAC digunakan untuk menjamin data yang masuk itu tidak ada yang berubah, dalam artian tidak ada orang yang mengubah paket data dalam trafik jaringan.

Algoritma CMAC pada prinsipnya merupakan variasi dari CBC-MAC, bisa dilihat di wiki atau di e-book SP_800-38B.pdf. Dan kali ini saya hanya akan memberikan CMAC menggunakan enkripsi TDEA(Triple Data Encryption Algorithm). 

Untuk membuat checksum menggunakan CMAC metode TDEA, terlebih dahulu kita harus tahu variabel apa saja yang diperlukan
- Key (K), yakni master key yang diperlukan untuk mengenerate subkey K1 dan K2.
- K1 & K2, yakni subkey yang dibutuhkan untuk XOR message (M) di 8 byte terakhir.
- Message (M), yakni data yang digunakan untuk menghasilkan checksum
- Initial Value (IV), digunakan untuk pada enkripsi CBC-TDEA.
Dan hal pertama yang kita lakukan adalah generate subkey (K1 & K2) dari K. Step - step untuk generate subkey;
1. L = CIPHK(0b) ; dengan b = 8 byte, sehingga 08 = 00000000, CIPHK() menggunakan algoritma TDEA enkripsi. (a*)
2. If MSB1(L) = 0, then K1 = L << 1 Else K1 = (L << 1) ⊕ Rb; Jika MSB (Most Significant Bit) 1 paling kiri dari L adalah 0, maka geser 1 bit ke kiri pada array L. Jika tidak maka geser 1 bit pada array L , lalu xor dengan Rb .
3. If MSB1(K1) = 0, then K2 = L << 1 Else K2 = (K1 << 1) ⊕ Rb; Jika MSB (Most Significant Bit) 1 paling kiri dari L adalah 0, maka geser 1 bit ke kiri pada array L. Jika tidak maka geser 1 bit pada array L , lalu xor dengan Rb .