Minggu, 22 April 2012

Silentdra Item Inventory and Invoice Manager

tampilan utama

Komputerisasi sudah sangat banyak ditemui dalam dunia perdagangan. Dalam transaksi jual beli sering kali penggunaan faktur dipakai. Untuk membantu membuat faktur "Silentdra Item Inventory and Invoice Manager" memiliki fitur :
  • Easy and Simple User Interface, tampilannya mudah untuk dipelajari dan dipahami.
  • Built in database using sqlite, software telah terpasang fitur database sehingga mengeliminasi kebutuhan database eksternal. Pengguna dapat memasukkan list barang yang cukup banyak ke inventory dengan mudah dan cepat.
  • Built-in Log Viewer, aplikasi selalu mencatat setiap pencetakan faktur sehingga pengguna dapat melakukan review transaksi.
  • Fast inventory search, fitur search interaktif dan cepat untuk mencari barang di dalam inventory
  • Multiplatform, aplikasi dapat berjalan pada berbagai sistem operasi seperti Microsoft Windows, Linux, MacOS
Tampilan faktur yang dibuat oleh aplikasi :


beberapa tampilan dari aplikasi :

Inventory Manager
Log Viewer

by : alvin
READ MORE - Silentdra Item Inventory and Invoice Manager

Sabtu, 07 April 2012

Pemrograman OpenGL sederhana pada Linux

Pasti sudah pernah dengar kan? apa itu openGL. OpenGL merupakan library yang digunakan untuk melakukan operasi grafis pada komputer, seperti game, menampilkan GUI, dll. Kali ini saya akan membahas cara instalasi tools yang diperlukan untuk membuat program openGL sederhana, tahap kompilasi sampai running, dan penjelasan singkat source code.

requirement : distro ubuntu, text editor(gedit), mengerti dasar-dasar linux(linux basic)

TAHAP PERSIAPAN
paket-paket bawaan atau yang telah terpasang pada distro ubuntu saat pertama kali install, belum menyediakan tools development openGL. Untuk menginstallnya ketikkan :

sudo apt-get install mesa-common-dev freeglut3-dev build-essential

setelah instalasi berhasil, langkah selanjutnya adalah menulis program. Sebagai tutorial saya akan menyajikan program sederhana buatan saya. Program ini akan menampilkan animasi 6 kubus warna-warni yang bergerak bolak-balik. Source code nya dapat dilihat dibawah :



lansung copas saja kode diatas lalu di save dengan nama animate.c

TAHAP KOMPILASI

setelah file nya di save, ketik perintah dibawah ini lewat terminal :

gcc -o animate animate.c -lX11 -lGL -lGLU

RUN THE PROGRAM

jika saat kompilasi tidak ada error, jalankan progrram dengan mengetikkan perintah di bawah via terminal :

 ./animate
Animasi OpenGL
Animasi OpenGL

PENJELASAN SOURCE CODE

Cukup panjang ya.. kode programnya? Tenang saya akan menjelaskan secara singkat kode programnya, ehemmm...

#include<stdio.h>
#include<stdlib.h>
#include<X11/X.h>
#include<X11/Xlib.h>
#include<GL/gl.h>
#include<GL/glx.h>
#include<GL/glu.h>
#include<GL/glut.h>

baris include diatas berfungsi untuk menyertakan semua header library openGL dan standart library C. Header "X11" berguna untuk membuat frame/window pada display, tempat dimana objek akan digambar oleh program. Header "GL/gl*" terdapat fungsi untuk menggambar garis, vertex, bentuk-bentuk primitif geometris, pewarnaan, dan operasi-operasi lainnya yang dapat dilakukan pada display.

float randFloat(float a, float b)

fungsi ini akan menghasilkan bilangan pecahan random yang digunakan oleh fungsi main() untuk menhasilkan animasi. Fungsi ini membutuhkan dua buah argumen untuk menentukan batas bawah (a) dan batas atas (b) bilangan pecahan.

void DrawAQuad(float xpos, float ypos, float zpos,float r, float g, float b) {

Kubus digambar oleh fungsi ini dimana letak nya diatur oleh xpos, ypos, dan zpos. Sedangkan untuk warna dari kubus diatur oleh r, g, b. Kubus memiliki enam sisi, untuk menghasilkan salah satu sisi dalam openGL dapat dilihat pada kode program di bawah :

glBegin(GL_QUADS);// depan
  glColor3f(r, g, 0.5);
  glVertex3f(xpos + 0, ypos + 0, zpos + 0.);
  glVertex3f(xpos +  0, ypos + (.05*scale), zpos + 0.);
  glVertex3f( xpos + (.05*scale),  ypos + (.05*scale), zpos + 0.);
  glVertex3f(xpos + (.05*scale),  ypos + 0, zpos + 0.);
glEnd();

glBegin(GL_QUADS); menyatakan openGL akan membuat persegi yang selanjutnya pewarnaan dilakukan oleh fungsi glColor3f() dan posisi sudut ditentukan oleh keempat fungsi glVertex3f().

DrawAQuad(.0 + tambah, .0, .0, 5, 0.2,0.098,0.2+tambah);
DrawAQuad(.0 - tambah, .0, .0, 5, 0.2,0.098+tambah,0.2);
DrawAQuad(.0, .0 +tambah, .0,5 , 0.2+tambah,0.098,0.2);
DrawAQuad(.0 , .0 - tambah, .0, 5, 0.2+tambah,0.098+tambah,0.2);
DrawAQuad(.0, .0, .0 + tambah, 5, 0.2,0.098+tambah,0.2+tambah);
DrawAQuad(.0, .0, .0 - tambah, 5, 0.2+tambah,0.098+tambah,0.2+tambah);
tambah += nilai;
hitung += nilai_int;

if(hitung == batas){
    nilai_int = -(nilai_int);
    nilai = -(nilai);
    batas = -(batas);
}

kode diatas akan menggambar keenam kubus dan memberi animasi pada setiap kubus.

oleh : Alvin
READ MORE - Pemrograman OpenGL sederhana pada Linux

Sabtu, 24 Desember 2011

Public Key PGP -- Alvin Aditya

Berhubung pemformatan raw text Blogger yang kurang baik, maka publik key dapat di copas dari :

http://codepad.org/2zYHdYDp

atau dengan menggunakan QR code pada gambar di bawah ini :


Cara mengimport Public Key :
Untuk text dari "codepad"
  1. copy text yang ada pada link diatas lalu paste ke dalam text editor, kemudian save dengan nama public.asc
  2. ketikkan pada terminal : gpg --import public.asc
Untuk QR code
  1. klik kanan image QR code diatas->save image as->save dengan nama public.jpg
  2. sebelumnya lakukan instalasi paket/software zbar-toolsuntuk Ubuntu, linux Mint(turunan ubuntu)
    ketikkan pada terminal :
    sudo apt-get install zbar-tools
     
  3. Jika instalasi berhasil, import public key dengan cara mengetikkan perintah berikut pada terminal:
        zbarimg -q --raw public.jpg | gpg --import -
Cara verifikasi pesan misalnya post :
Kalahkan Korban !!!!
Siap PIMPINAN !!!
 cara verifikasi pesan diatas^ :
  1. save gambar "qr code" diatas dengan nama pesan.png
  2. ketik pada terminal : 
zbarimg -q --raw pesan.png | gpg --decrypt -
jika output :
Kalahkan Korban !!!!
Siap PIMPINAN !!!
gpg: Signature made Tue 06 Sep 2011 01:59:50 PM WIT using RSA key ID BE4E49CD
gpg: Good signature from "Alvin Aditya (short message) (arbaless@gmail.com)
maka verifikasi berhasil.

!!!!!!!!!!!!!!! PENTING !!!!!!!!!!!!!!!!!
perhatikan pesan pada post dengan pesan yang ditampilkan output, dalam hal ini keduanya harus berisi kata yang sama dengan pesan pada post

CARA MEMBUAT SIGNATURE

bagi yang berminat untuk "RIBET" atau jadi "MASOCHISM" seperti saya, ikuti cara di bawah ini :
Pada tutorial ini menggunakan software gpg(gnu-pg), dan qrencode, pastikan software tersebut telah terinstall dan berfungsi dengan baik.
#instalasi qrencode pada Ubuntu :
sudo apt-get install qrencode
Pastikan juga anda telah membuat private dan public key
misalnya anda ingin membuat signature dari pesan :
tolong kirim arsip ke sekretaris saya besok jam 15.00
-> ketik pesan tersebut di text editor, lalu save dengan nama pesan.txt
-> ketik di terminal :
cat pesan.txt | gpg --clearsign - | qrencode -o gambar_qrcode.png
-> masukkan passphrase(jika diminta)
-> upload gambar ke FB atau image sharing
-> copy link gambar tersebut dan sisipkan pada pesan anda

#ctt : jika file png hasil qrencode tidak dapat di upload ke FB/image share, coba untuk men-export/convert ulang file tersebut menggunakan software manipulasi gambar(Photoshop, GIMP) menjadi format yang sama(.png) atau ke format lainnya(jpg,bmp,gif)

Mengirimkan Pesan RAHASIA menggunakan GPG/PGP dan QR Code

Pastikan anda mempunyai publik key dari orang yang akan anda kirimkan pesan !
Dalam contoh ini dimisalkan saya akan mengirimmkan pesan pada "naruto uzumaki" :P dimana si "naruto" memiliki publik key dengan email : naruto@uzumaki.co.jp

-> ketikkan pesan rahasia anda pada text editor, lalu save dengan nama rahasia.txt
-> ketik pada terminal/console :
cat rahasia.txt | gpg -e -r naruto@uzumaki.co.jp --output - --armor - | qrencode -o gambar_qr.png
-> upload/kirim gambar ke FB atau situs image sharing agar dapat diakses oleh penerima

#ctt : jika file png hasil qrencode tidak dapat di upload ke FB/image share, coba untuk men-export/convert ulang file tersebut menggunakan software manipulasi gambar(Photoshop, GIMP) menjadi format yang sama(.png) atau ke format lainnya(jpg,bmp,gif)

Cara mendekripsi pesan oleh penerima :
  1. save gambarnya!
  2. ketik pada terminal :
zbarimg --raw -q [nama file gambar] | sed '$d' | gpg --decrypt -
syarat buat bisa decrypt :
  1. penerima memiliki public key pengirim
  2. memiliki private key(waktu bikin public key pasti private key dibikin juga)
walaupun orang lain punya public key pengirim dan public key penerima, tetap saja tidak bisa di dekripsi, soalnya tidak punya private key, kecuali dia dapet private-key penerima serta passphrase-nya.

oleh : Alvin
READ MORE - Public Key PGP -- Alvin Aditya

Minggu, 11 Desember 2011

Amaterasu Anti ARP Spoofing

READ MORE - Amaterasu Anti ARP Spoofing

Sabtu, 30 April 2011

Memperbaiki boot loader linux

Sering terjadi masalah ketika seorang user menginstall ulang OS windowsnya, setelah windows selesai di install ternyata linux yang sebelumnya telah terinstall tidak terdeteksi oleh boot loader windows, dengan kata lain grub loader( boot loader populer yang sering dipakai distro linux) tertimpa oleh boot loader windows. Hal ini sangat sering terjadi pada teman-teman saya yang baru newbie atau masih coba-coba pakai linux. Masalah ini lumayan memusingkan sampai-sampai salah seorang teman saya rela tengah malam menelpon saya demi untuk mengatasi masalah ini. Sebenarnya mengatasi masalah yang satu ini cukup mudah dan simple, cukup bermodalkan live cd linux. Dalam tulisan ini saya memakai live cd ubuntu dan live cd linux mint.
  1. Pertama booting linux lewat live cd
  2. Restart/hidupkan komputer, masukkan cd ke disk drive, dan rubah setting bios agar booting pertama lewat cd/dvd rom.
  3. Setelah berhasil masuk ke tampilan GUI linux
  4. buka terminal, dan jalankan perintah : sudo mkdir /mnt/recover_grub sudo fdisk -l tekan enter, maka akan tampil informasi mengenai disk yang terpasang beserta partisi di dalamnya
  5. berdasarkan informasi yang tampil, mount partisi root linux yang akan di recover grub loader-nya
  6. Tahap ini perlu bantuin seorang yang mahir dalam linux. Untuk memeriksa apakah partisi tersebut adalah partisi linux, dapat dicoba dengan mount partisi satu persatu. Cara untuk mounting partisi adalah dengan menjalankan perintah : sudo mount [partisi linux] [folder mount point] misal : sudo mount /dev/sda2 /mnt/recover_grub
  7. Mulai lakukan proses instalasi grub
  8. setelah partisi linux di mount di folder yang telah ditentukan, jalankan perintah : sudo grub-install --root-directory=[folder mounnt point] [install device] misal ; sudo grub-install --root-directory=/mnt/recover_grub /dev/sda
Selain menggunakan live cd, dapat juga menggunakan flash disk yang sudah terinstall live cd.
oleh : alvin
READ MORE - Memperbaiki boot loader linux

Rabu, 02 Maret 2011

Merubah scanned pdf menjadi teks html


           Ketika mencari sumber referensi, saya mendapatkan file pdf yang contentnya/teks berupa gambar. Akibatnya saya tidak bisa mengcopy tulisannya(wkwkwk... kebiasaan buruk). Ada salah satu cara untuk merubah scanned pdf menjadi html, dengan menggunakan fasilitas google. Jika mendapatkan hasil pencarian file pdf, maka google akan menampilkan opsi untuk menampilkannya dalam bentuk html. Cara ini hanya berguna jika file pdfnya terindeks semua dan google hanya menampilkan 20 halaman pertamanya saja. 

         Ada satu cara lain, yaitu mengkonversi file pdf tersebut menjadi kumpulan gambar(.png, .jpg), lalu kemudian menscan gambar tersebut dengan OCR, lalu untuk outputnya berupa HTML atau file teks. Karena saya(penulis) menggunakan operating system GNU/linux ubuntu, maka cara dibawah ini hanya berlaku untuk OS GNU/linux saja( untuk yang versi windows, tanya ke orang lain saja yaaa!).

Langsung saja....
Pertama-tama install terlebih dahulu xpdf, imagemagick, dan ocropus


sudo apt-get install xpdf imagemagick ocropus

gunakan script dibawah ini untuk menkonversi. Simpan dengan nama "pdf2txt"(tanpa tanda kutip).


#! /bin/sh
# Simple wrapper to recognize PDF files
#
# This script is based on ocropdf by Christian Mahnke
# original script can be downloaded from http://groups.google.com/group/ocropus/attach/e3cd3c9c36dfce87/ocropdf?part=2
#
# I just modify it, to achieve my requirement
#
#Usage:
#pdf2html input.pdf > hocr-output.html
#
#The following environment variables are recognised:
#- PDFIMAGES: Path to 'pdfimages' if it's not in your path
#- CONVERT: Path to 'pdfimages' if it's not in your path
#- OCROSCRIPT: Path to 'ocroscript' if it's not in your path or this script is not #placed in the ocropus source tree (in the 'ocrocmd' directory)
#- tesslanguage: The language tesseract should use.
#
#
#Known problems:
# - Doesn't work with file names containing spaces.
# - Only works with a singe PDF file.
#
#Possible improvements
# - reimplement it as Lua script.
# - Use this approach (imagemagick) to be able to recognise TIFF and other file formats.
#
# By Alvin from orangunix.blogspot.com
if test -z "$PDFIMAGES" ; then
PDFIMAGES=`which pdfimages`
fi
if test -z "$CONVERT" ; then
CONVERT=`which convert`
fi
if test -z "$PDFIMAGES" ; then
echo "'pdfimages' not found in PATH (it's part of the xpdf package)"
fi
if test -z "$PDFIMAGES" ; then
echo "'convert' not found in PATH (it's part of the imagemagick package)"
fi
if test -z "$OCROSCRIPT" ; then
OCROSCRIPT=`which ocroscript`
if test -z "$OCROSCRIPT" ; then
DIR=`dirname $0`/../ocroscript
OCROSCRIPT="$DIR/ocroscript"
if test -z "$OCROSCRIPTS" ; then
OCROSCRIPTS=$DIR/scripts
fi
fi
fi
if test -z "$1" ; then
echo "Usage: ./pdf2txt input.pdf > hocr-output.html"
exit 1
fi
TMP_DIR=`tempfile -p pdf2txt`
rm -f $TMP_DIR
mkdir $TMP_DIR
echo $TMP_DIR
PDFIMAGES_CMD="$PDFIMAGES $1 $TMP_DIR/pdf2txt"
echo $PDFIMAGES_CMD
$PDFIMAGES_CMD
echo $TMP_DIR
for FILE in `ls $TMP_DIR`
do
#echo $FILE
CONVERT_CMD="$CONVERT $TMP_DIR/$FILE $TMP_DIR/$FILE.jpg"
$CONVERT_CMD
if test $? != 0 ; then
echo "'convert' failed"
exit 2
fi
FILES="$FILES $TMP_DIR/$FILE.jpg"
#rm -f $TMP_DIR/$FILE
done
$OCROSCRIPT recognize `ls $TMP_DIR | grep .pbm.jpg`
#if test -z "$tesslanguage" ; then
# OCROSCIPT_CMD="$OCROSCRIPT rec-tess $FILES"
#else
# OCROSCIPT_CMD="$OCROSCRIPT rec-tess --tesslanguage=$tesslanguage $FILES"
#fi
#
#$OCROSCIPT_CMD
#rm -r $TMP_DIR


Cara penggunaan :
Misalnya anda ingin menkoversi "makalah.pdf" ke dalam file html, gunakan perintah :

./txt2pdf makalah.pdf > makalah.html

perintah diatas akan menkonversi "makalah.pdf" dan outputnya "makalah.html".

oleh : Alvin

READ MORE - Merubah scanned pdf menjadi teks html

Minggu, 27 Februari 2011

Manajemen Bandwidth dengan Squid


Squid merupakan software proxy server/cache server yang free dan opensource. Squid biasanya dijalankan di sistem operasi GNU/Linux. Squid juga memiliki kelebihan mengatur dan membatasi bandwidth berdasarkan extension, misalnya sebuah server di konfigurasi untuk membatasi client hanya menggunakan bandwidth 100kbps untuk mendownload file berekstensi .flv, .avi, dan sebagainya.

Langsung saja ke tahap-tahap instalasi :
  • Saya sarankan menginstall squid dari source, sehingga dapat dikonfigurasi saat compile, karena secara default squid tidak mendukung fitur delay pool sebagai pengatur bandwidth.

  • Untuk mendapatkan performa maksimum, buatlah partisi tersendiri dengan ukuran kira-kira 300MB, beri nama partisi "/cache"(tanpa kutip).

  • Tambahkan/buat user "squid" ke dalam sistem :
useradd -d /cache/ -r -s /dev/null squid >/dev/null 2>&1
  • Download source squid menggunakan link di bawah ini(saat tulisan ini dibuat, rilis squid terbaru adalah versi 3.1.11) :
http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.11.tar.gz
  • Extract file .tar.gz :
tar xzpf squid-3.1.11.tar.gz
  • compile dan install squid, folder instalasi adalah /opt
./configure --prefix=/opt/squid --exec-prefix=/opt/squid --enable-delay-pools --enable-cache-digests --enable-poll --disable-ident-lookups --enable-truncate --enable-removal-policies

make all

make install
  • konfigurasi file squid.conf(terletak di /opt/squid/etc/squid.conf)
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
#acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
#acl localnet src fc00::/7 # RFC 4193 local private network range
#acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
#acl Safe_ports port 70 # gopher
#acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
#acl Safe_ports port 280 # http-mgmt
#acl Safe_ports port 488 # gss-http
#acl Safe_ports port 591 # filemaker
#acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager

# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# squid as an httpd accelerator
#httpd_accel_host virtual
# port you want to act as a proxy
#httpd_accel_port 80
# Squid act as both a local httpd accelerator and as a proxy
#httpd_accel_with_proxy on
# Header is turned on which is the hostname from the URL
#httpd_accel_uses_host_header on

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
http_access allow localnet
http_access allow localhost

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# set who user and group that squid will run, note : must run with root first!
cache_effective_user squid
cache_effective_group squid
#Memory the Squid will use. Well, Squid will use far more than that.
cache_mem 16 MB

# Uncomment and adjust the following to add a disk cache directory.
cache_dir ufs /cache 250 16 256

# Leave coredumps in the first cache dir
coredump_dir /opt/squid/var/cache

#Places where Squid's logs will go to.
cache_log /var/log/squid/cache.log
access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
cache_swap_log /var/log/squid/swap.log
#How many times to rotate the logs before deleting them.
#See the FAQ for more info.
logfile_rotate 10

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

#all our LAN users will be seen by external web servers
#as if they all used Mozilla on windows xp sp2. :)
#anonymize_headers deny User-Agent
#fake_user_agent Mozilla/5.0 (compatible; U;windows xp sp2; en-US)

### DELAY POOLS ###

#This is the most important part for shaping incoming traffic with Squid
#For detailed description see squid.conf file or docs at http://www.squid-cache.org

#kita ingin membatasi bandwidth untuk mendownload file jenis yang disebutkan di bawah ini
#tulis semua dalam satu baris
acl magic_words url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .rpm .deb .zip .rar .avi .mpeg .mpe .bin .sh .tar.bz2 .pdf .mkv .ogg .mpg .qt .ram .rm .iso .raw .wav .mov .wmv .flv .mp4 #kita tidak membatasi .html, .gif, .jpg dan file lain yang sejenis
#karena tidak terlalu memboroskan bandwidth

#We have two different delay_pools
#View Squid documentation to get familiar
#with delay_pools and delay_class.
delay_pools 2

#First delay pool
#We don't want to delay our local traffic.
#There are three pool classes; here we will deal only with the second.
#First delay class (1) of second type (2).
delay_class 1 2

#-1/-1 mean that there are no limits.
#The numbers here are values in bytes;
#we must remember that Squid doesn't consider start/stop bits
#5000/150000 are values for the whole network
#5000/120000 are values for the single IP
#after downloaded files exceed about 150000 bytes,
#(or even twice or three times as much)
#they will continue to download at about 5000 bytes/s

delay_parameters 1 20000/150000 20000/120000
delay_access 1 allow magic_words


  • konfigurasi folder squid
mkdir /var/log/squid/
chown squid:squid /var/log/squid/
chmod 770 /var/log/squid/
chown -R squid:squid /opt/squid/
chown -R squid:squid /opt/squid/

  • karena pertama kali squid dijalankan, perintahkan squid untuk membuat terlebih dahulu folder cache
/opt/squid/bin/squid -z
  • jalankan squid
/opt/squid/bin/squid
Squid akan berjalan pada port 3128.

READ MORE - Manajemen Bandwidth dengan Squid

Jumat, 25 Februari 2011

Komponen pada Handphone Beserta Fungsi-Fungsinya


Handphone merupakan perangkat komunikasi yang telah luas digunakan oleh masyarakat di seluruh dunia. Handphone memiliki ukuran kecil sehingga mudah dibawa-bawa dan ringan. Sampai saat ini teknologi yang digunakan pada handphone meningkat dan handphone tidak hanya digunakan untuk komunikasi saja tetapi juga sebagai sarana hiburan dan manajemen personal sang pengguna. Terlepas dari fitur dan teknologi handphone yang bermacam-macam, dalam tulisan ini akan dijelaskan secara singkat komponen yang sering terdapat pada handphone. 

Pada handphone terdapat rangkaian utama yaitu :
  1. Rangkaian Transmisi(Tx)
  2. adalah rangkaian yang berfungsi untuk mentransmisikan/mengirimkan sinyal radio ke operator. Dalam rangkaian ini terdapat TX Filter, RF power amp, ANT switch, dll.
  3. Rangkaian Receiver(Rx)
  4. berfungsi untuk menerima sinyal dan penyaring sinyal yang diterima ponsel dari BTS. Dalam rangkaian ini terdapat Frequency Synthesizer, RX-VCO, dan Intermediate Frequency(IF) Module.
  5. IC power supply
  6. berfungsi untuk menyediakan daya pada seluruh komponen yang ada di handphone, sesuai dengan kebutuhan daya masing-masing komponen. IC ini juga memiliki fitur automatic charging, dan memutus aliran listrik ke baterai ketika baterai sudah full charge. Kebutuhan daya pada masing-masing bagian diatur menggunakan sinyal PWM.
  7. IC Power Amplifier
  8. Berfungsi sebagai penguat sinyal dan pengirim data ke operator yang menandakan bahwa nomor ringtone telah aktif. Berfungsi juga sebagai power transmit, yakni mengirimkan energi gelombang elektromagnetik ke operator sekaligus mengunci agar tetap tersambung. IC ini bekerja saat handphone dihidupkan dan saat melakukan panggilan. IC ini membutuhkan daya yang besar untuk menguatkan sinyal.
  9. Antena
  10. berfungsi untuk menangkap gelombang radio yang dipancarkan oleh operator.
  11. Switch antena(duplexer)
  12. berfungsi sebagai pengirim dan penerima gelombang elektromagnetik. Dengan teknologi full duplexer berupa switch antena pada handphone, kita dapat melakukan komunikasi dua arah. Duplexer merupakan penyesuai antara antena dan RF/PA.
  13. IF IC(RF Processor)
  14. Merupakan komponen pengolah sinyal yang masuk atau yang keluar dan memperkuat sinyal pada selisih frekuensi. Fungsi lain IF IC adalah sebagai mikser dan detektor. Sebagai mikser, IF IC mencampurkan sinyal operator dengan sinyal ponsel. Sebagai detektor, IF IC memangkas sinyal pembawa dan sinyal audio yang kemudian dialirkan ke IC audio sehingga terjadi selisih. Selisih tersebut diperkuat oleh IF IC sebagai detektor untuk memangkas sinyal pembawa dan sinyal audio yang kemudian dialirkan ke IC audio. Jika komponen ini rusak, ponsel tidak dapat menerima sinyal.
  15. IC audio
  16. Berfungsi memperbesar gelombang suara serta mengubah getaran dari digital ke analog atau sebaliknya. Fungsi IC audio adalah sebagai Pulse Code Modulation(PCM). Kerusakan pada IC audio dapat menyebabkan suara menjadi kecil.
KOMPONEN PROCESSOR
  1. Central Processing Unit(CPU)
  2. Merupakan pusat pengolahan data untuk menginstruksikan proses penyimpanan data ke memory. CPU bertugas untuk mengendalikan seluruh perangkat yang ada, dan memerintahkan perangkat spesifik untuk bekerja berdasarkan dengan instruksi yang tersimpan dalam memori atau via input user.
  3. EEPROM(Electrically Erasable Programmable Read Only Memory)
  4. Merupakan IC memori yang berisi data sistem operasi hp seperti program pada ponsel yang berisi gambar grafik, logo, dan nada dering.
  5. Random Access Memory(RAM)
  6. Merupakan IC memory yang digunakan CPU untuk menyimpan instruksi dan data. RAM bersifat volatile yaitu jika aliran listriknya putus maka data yang ada di dalamnya akan hilang.
  7. Digital Signal Processor
  8. Merupakan IC yang dirancang khusus untuk mengolah sinyal digital ke analog maupun dari sinyal analog ke digital.
  9. Multimode Adaptor(MMA) atau User Interface(UI)
  10. Merupakan IC yang mengatur komponen lain untuk berhubungan dengan output hp seperti buzzer/ringer, lampu, dan vibra(motor).
  11. Flash ROM
  12. Merupakan IC memori berisi data yang dapat diisi ulang dengan bantuan program komputer seperti ROM dan EEPROM. Data ini tetap ada walaupun hp dalam keadaan mati.
  13. 26 MHz Crystal Oscillator(Frequency Shynthesizer)
  14. Merupakan IC pembangkit sinyal frrekuensi di ponsel agar ponsel dapat menerima dan mentransmisikan data.
KOMPONEN INPUT
  1. Keypad
  2. Komponen masukan untuk membuat kombinasi alphanumeric yang tersambung ke CPU. Berfungsi membangkitkan getaran dual tonemulty frequency yang merupakan kode digital alphanumeric berupa huruf, angka, dan tanda baca. Sinyal tersebut merupakan terjemahan yang berdasarkan standar kode ASCII.
  3. Mikrofon
  4. Alat input untuk memasukkan suara ke dalam handphone. Bekerja dengan cara mengubah getaran suara menjadi getaran listrik audio analog. Sinyal analog selanjutnya diubah menjadi sinyal digital audio oleh Digital Signal Processor(DSP).
  5. Kamera
  6. Sensor optik yang menangkap gambar atau objek untuk kemudian diolah oleh bagian rangkaian dan diteruskan ke handphone.
  7. VCO
  8. Merupakan IC yang berguna pada proses penerimaan sinyal dari operator. Bila IC ini rusak, penerimaan sinyal akan mengalami kegagalan.
KOMPONEN OUTPUT
  1. Ear Piece
  2. Berfungsi untuk mengubah getaran audio analog dari Digital Signal Processor(DSP) menjadi getaran udara yang akan terdengar sebagai suara.
  3. LCD
  4. Output yang mengubah sinyal SAN dan SGR menjadi gambar dan tulisan sebagai media untuk baca dan tulis. LCD juga berfungsi menampilkan tulisan, gambar, indikator baterai (penuh atau tidak), dan indikator sinyal.
  5. Buzzer
  6. Komponen penghasil ringtone atau alat speaker yang mengubah sinyal nada dering menjadi getaran udara yang terdengar sebagai suara melodi atau musik. Nada dering ini berasal dari MMA pada CPU yang diambil dari RAM.
  7. Vibrator
  8. Merupakan motor atau dinamo yang berputar dan menghasilkan getaran mekanik. Getaran mekanik ini akan terasa pada saraf kulit manusia.
KOMPONEN INPUT-OUTPUT
  1. konektor sim card
  2. merupakan tempat untuk terhubungnya sim card dengan PCB pada ponsel.
  3. Infra Red(IR)
  4. fungsinya menghubungkan hp dengan komponen lain sebagai jembatan data melalui media sinar infra merah.
  5. Bluetooth
  6. komponen yang fungsinya sama dengan infra merah, tetapi menggunakan gelombang radio yang berbentuk gigi gergaji sebagai medianya.
sumber : Daniswara Sony & Riyan, Mencari dan Memperbaiki Kerusakan pada Handphone, Kawan Pustaka
READ MORE - Komponen pada Handphone Beserta Fungsi-Fungsinya

Jumat, 31 Desember 2010

Python : Membuat GUI dengan PyGTK

    Berbagai macam toolkit GUI untuk python diantaranya tk, wxPython, PyGTK, dan lain-lain. Kali ini source code menggunakan PyGTK. Kelebihan PyGTK adalah toolkit ini melakukan manajemen memory GUI secara otomatis, sehingga memudahkan programmer tanpa perlu untuk bersusah payah dalam urusan memanajemen memori. Di bawah ini adalah source code untuk menampilkan tombol dengan text "Hello world". Jika tombol ditekan maka pada commandline akan tercetak "Hello world".

    1   #!/usr/bin/env python
    2
    3   # example helloworld.py
    4
    5   import pygtk
    6   pygtk.require('2.0')
    7   import gtk
    8
    9   class HelloWorld:
   10
   11       # This is a callback function. The data arguments are ignored
   12       # in this example. More on callbacks below.
   13       def hello(self, widget, data=None):
   14           print "Hello World"
   15
   16       def delete_event(self, widget, event, data=None):
   17           # If you return FALSE in the "delete_event" signal handler,
   18           # GTK will emit the "destroy" signal. Returning TRUE means
   19           # you don't want the window to be destroyed.
   20           # This is useful for popping up 'are you sure you want to quit?'
   21           # type dialogs.
   22           print "delete event occurred"
   23
   24           # Change FALSE to TRUE and the main window will not be destroyed
   25           # with a "delete_event".
   26           return False
   27
   28       # Another callback
   29       def destroy(self, widget, data=None):
   30           gtk.main_quit()
   31
   32       def __init__(self):
   33           # create a new window
   34           self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
   35
   36           # When the window is given the "delete_event" signal (this is given
   37           # by the window manager, usually by the "close" option, or on the
   38           # titlebar), we ask it to call the delete_event () function
   39           # as defined above. The data passed to the callback
   40           # function is NULL and is ignored in the callback function.
   41           self.window.connect("delete_event", self.delete_event)
   42
   43           # Here we connect the "destroy" event to a signal handler.
   44           # This event occurs when we call gtk_widget_destroy() on the window,
   45           # or if we return FALSE in the "delete_event" callback.
   46           self.window.connect("destroy", self.destroy)
   47
   48           # Sets the border width of the window.
   49           self.window.set_border_width(10)
   50
   51           # Creates a new button with the label "Hello World".
   52           self.button = gtk.Button("Hello World")
   53
   54           # When the button receives the "clicked" signal, it will call the
   55           # function hello() passing it None as its argument.  The hello()
   56           # function is defined above.
   57           self.button.connect("clicked", self.hello, None)
   58
   59           # This will cause the window to be destroyed by calling
   60           # gtk_widget_destroy(window) when "clicked".  Again, the destroy
   61           # signal could come from here, or the window manager.
   62           self.button.connect_object("clicked", gtk.Widget.destroy, self.window)
   63
   64           # This packs the button into the window (a GTK container).
   65           self.window.add(self.button)
   66
   67           # The final step is to display this newly created widget.
   68           self.button.show()
   69
   70           # and the window
   71           self.window.show()
   72
   73       def main(self):
   74           # All PyGTK applications must have a gtk.main(). Control ends here
   75           # and waits for an event to occur (like a key press or mouse event).
   76           gtk.main()
   77
   78   # If the program is run directly or passed as an argument to the python
   79   # interpreter then create a HelloWorld instance and show it
   80   if __name__ == "__main__":
   81       hello = HelloWorld()
   82       hello.main()

oleh : alvin
source code : Pygtk tutorial 2.0 by John Finlay
READ MORE - Python : Membuat GUI dengan PyGTK

Menampilkan bilangan fibonacci dengan python

Berikut ini adalah source code python untuk menampilkan bilangan fibonacci.

angka = input("masukkan limit deret fibonacci (angka) = ")
fibo = [0,1]
for a in range(angka):
    if a>1:
        print fibo[a-1] + fibo[a-2],
        fibo.append(fibo[a-1] + fibo[a-2])
    else:
        print fibo[a],

oleh : alvin
READ MORE - Menampilkan bilangan fibonacci dengan python

Berselancar secara anonymous dan secure menggunakan vpn

     VPN merupakan sebuah protocol yang memungkinkan kita untuk melakukan koneksi secara aman antar host ke host, seolah-olah kita mempunyai private line pada jaringan internet. VPN yang akan saya bahas kali ini adalah server-server vpn yang dapat difungsikan untuk browsing web secara anonymous dan secure, dan juga membypass firewall-firewall yang memblock website yang tidak boleh dikunjungi atau dilarang pemerintah. Misalnya saja, menggunakan vpn untuk mengunjungi situs veoh.com yang secara default tidak bisa diakses oleh pengguna internet indonesia secara langsung.

1. Your-Freedom.net

     Vpn server yang satu ini merupakan yang paling bagus yang pernah saya coba. Karena vpn server satu ini mendukung berbagai platform yaitu windows, linux, MacOS. Berhubung saya menggunakan operating system linux, kelebihan ini sangat berguna sekali. Sebelum menggunakan layanan ini, user harus melakukan registrasi terlebih dahulu pada website nya, lalu mendownload software client. Koneksi menggunakan software ini lumayan, tetapi untuk freeuser hanya dibatasi sampai 10 koneksi saja, dan freeuser hanya dapat menggunakan beberapa server.

2. Ultravpn

    Ultravpn juga menyediakan layanan koneksi vpn, hanya saja tidak mendukung platform linux. Bagi pengguna windows tidak akan kesulitan dalam melakukan instalasinya. Koneksi menggunakan Ultra vpn server dalam segi kecepatan relatif cepat ketika siang hari. Namun bagi freeuser koneksi dibatasi hanya 10 koneksi per ip. Sama seperti Freedom vpn server, user harus registrasi terlebih dahulu di website ultravpn.

Untuk saat ini hanya dua buah serrver vpn server saja yang baru saya review. Kedepannya post ini akan saya update. Silahkan beri komentar atau referensi vpn server lainnya...

oleh : alvin
READ MORE - Berselancar secara anonymous dan secure menggunakan vpn

Instalasi openssh-server pada ubuntu




     Openssh server merupakann sebuah software yang sering digunakan untuk melakukan koneksi remmote dari client ke server. Untuk koneksi ke server yang telah terinstall Openssh-server, client dapat menggunakan openssh-client yang dapat dijalankan melalui command line dengan sintaks yang secara umum seperti dibawah ini :
    ssh username@hostname
contohnya :
    ssh it_support@telkom.net
Instalasi openssh-server pada Ubuntu atau distro debian lainnya sangat mudah langkahnya. Pertama-tama ketik pada console/terminal windows :
    sudo apt-get install oppenssh-server
Setelah terinstall, service opensssh-server harus di start terlebih dahulu dengan cara :
    sudo service ssh start
Service openssh-server akan running dan memantau port 22 jika terjadi koneksi ssh dari client. Untuk mengkonfigurasi ssh server lebih lanjut, modifikasi dapat dilakukan pada file "sshd_config" yang terletak pada folder /etc/ssh. Contoh file konfigurasinya dibawah ini :

# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 768

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile    %h/.ssh/authorized_keys

# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# For this to work you will also need host keys in /etc/ssh_known_hosts
RhostsRSAAuthentication no
# similar for protocol version 2
HostbasedAuthentication no
# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
#IgnoreUserKnownHosts yes

# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosGetAFSToken no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
#UseLogin no

#MaxStartups 10:30:60
#Banner /etc/issue.net

# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes
READ MORE - Instalasi openssh-server pada ubuntu

Me-resume download dari megaupload atau rapidshare

     Megaupload dan Rapidshare merupakan situs file sharing yang lumayan populer. Tetapi banyak kendala untuk mendownload berbagai media dari situs ini sebagai free user. Free user hanya diizinkan untuk melakukan satu koneksi per ip ke server selama selang waktu yang lumayan lama. Juga yang momok bagi pengguna free adalah download tidak dapat di resume kembali. Saya sempat mencoba menganalisa berbagai macam cara yang diinternet untuk mengatasi masalah ini. Diantaranya kita dapat menggunakan layanan rapidleech. Kekurangan rapidleech adalah kita harus terganggu oleh banyaknya iklan atau server rapidleech yang sering down. Dalam tulisan ini saya akan menerangkan bagaimana cara lain untuk meresume download tanpa menggunakan rapidleech.
     Biasanya ketika akan mendownload file dari Megaupload atau Rapidshare, kita harus menunggu countdown time link download. Countdown ini merupakan aktivasi session bagi free user untuk mendownload.



Misalnya saja anda mempause download dan ingin meresume kembali download tersebut. Anda harus melakukan aktivasi session ulang agar ip anda diizinkan untuk melakukan koneksi



Untuk melakukan aktivasi session, free user harus menunggu paling sedikit 30 menit. Jika sudah 30 menit atau lebih, barulah kita melakukan aktivasi session ulang dengan cara mengunjungi reference link download tersebut. Tunggu sampai waktu countdown selesai, maka akan muncul tulisan "Download now", tetapi jangan klik tulisan/link tersebut. Maka session download akan tercipta dan anda dapat meresume download yang tertunda lewat download manager.

oleh : alvin
READ MORE - Me-resume download dari megaupload atau rapidshare

Me-resume kembali download dari mediafire dengan DownThemAll

      Situs mediafire terkenal karena kelebihannya dalam memberikan kemudahan bagi user untuk mendownload file dari servernya. User bisa melakukan koneksi secara serentak ke server sehingga download manager dapat menggunakan kelebihan ini untuk mendownload file dengan lebih cepat. Namun sekarang ini terjadi kasus, download yang di pause lebih dari 24 jam/ 1 hari akan error ketika proses mendownload di resume kembali. Hal ini terjadi pada saya beberapa kali, dan saya coba cek sana sini untuk mengetahui penyebabnya. Akhirnya setelah beberapa hari menganalisa, saya menemukan penyebabnya. Ternyata, link download file pada mediafire akan di regenerate atau berganti setiap pergantian hari, misalnya hari senin sebuah file memiliki link :
http://download405.mediafire.com/nqiozs308wzg/nh2dkdmnjzo/%5BKHnF+-+ZAnF%5D+The+Gazette+-+The+invisible+wall+%5BDVDRip%5D%5BB01C4A2E%5D.part1.rar
esok harinya pada hari selasa link akan berubah menjadi :
http://download844.mediafire.com/uzhgjxmmjdxg/jj1m1tyojdj/%5BKHnF+-+ZAnF%5D+The+Gazette+-+The+invisible+wall+%5BDVDRip%5D%5BB01C4A2E%5D.part2.rar
karena link yang ada di mediafire berubah tetapi link download yang tersimpan pada Download Manager adalah link yang lama, maka ketika kita me-resume download akan error karena link yang lama sudah tidak ada. Yang menjadi pertanyaan, bagaimana caranya merubah link download yang lama menjadi yang baru? Masalahnya, pada beberapa Download Manager, link download dikunci dan tidak bisa dirubah begitu saja. Kebanyakan Download Manager menyimpan data dan link download pada sebuah database yang ada pada folder instalasi software tersebut, jadi untuk merubah linknya kita harus merubah value pada database yang digunakan oleh Download Manager tersebut.
         Karena saya menggunakan "DownThemAll" yang merupakan download manager/plugin pada web browser "Mozilla Firefox" dan Operating system "Ubuntu linux", cara-cara yang akan dijelaskan juga hanya spesifik untuk software tersebut. Pada downthemall link download tidak dapat diubah sehingga mengharuskan kita untuk mengedit langsung databasenya. Downthemall menggunakan database sqlite untuk menampung entri-entri link download. Untuk mengedit database dengan mudah, saya rekomendasikan menggunakan tool "sqlitebrowser". Melalui command line dapat menginstallnya dengan perintah :
$ sudo apt-get install sqlitebrowser
  1. File database sqlite milik dTA biasanya disimpan di folder konfigurasi mozilla dengan nama "dta_queue.sqlite. Pada sistem saya, file ini terletak di folder ~/.mozilla/firefox/3wrx8dt2.default.


  2. Jika telah ditemukan filenya, buka tool "sqlitebrowser" untuk mengedit file databasenya. Karena tool ini berbasis GUI, untuk pemula tidak akan kesulitan untuk mengoperasikan software ini.


  3. Klik tombol open, lalu akan muncul file browser window, arahkan pada file database yang akan diedit

  4. Pilih tab "Browse Data", lalu pilih entry yang akan dirubah value-nya


  5. klik dua kali pada entry tersebut, nanti akan muncul jendela editor, lalu carilah link download lama, seperti terlihat pada gambar di bawah ini:

  6. Rubah kedua link yang lama menjadi link yang baru kemudian close window editor dan save.
Setelah melakukan langkah-langkah tersebut, download dapat diresume tanpa error.

oleh : alvin
READ MORE - Me-resume kembali download dari mediafire dengan DownThemAll

Jumat, 10 Desember 2010

Mengamankan koneksi data pada jaringan

Terdapat berbagai cara untuk mengamankan jalur koneksi data antara client dan server. Diantaranya adalah :

  1. SSH
  2.            Secure SHell merupakan sebuah program untuk mengendalikan komputer lain dari jarak jauh lalu mengeksekusi perintah di komputer tersebut. SSH menyediakan komunikasi aman yang terenkripsi antar dua buah terminal melalui koneksi jaringan yang kurang aman. Sebelumnya, untuk mengendalikan komputer secara remote dipergunakan protokol telnet, tetapi penggunaan protokol ini tidak aman dikarenakan karena jalur komunikasi tidak di enkripsi sehingga username dan password yang dikirim dalam bentuk plaintext dapat disadap oleh pihak ketiga. Dengan ssh, antara kedua komputer terlebih dahulu membuat tunnel kemudian dilakukan koneksi telnet ke komputer tujuan, dengan demikian username dan password dikirim melalui tunnel terenkripsi, sehingga tidak dapat disadap.

  3. SSL
  4.           Kependekan dari secure socket layer. Merupakan metode untuk mengenkripsi koneksi data yang terjadi antara client dan server. Metode ini hanya dapat dilakukan jika client dan server telah memiliki kemampuan untuk berkomunikasi menggunakan ssl, dan serverlah yang menentukan apakah koneksi akan dilakukan menggunakan ssl atau tidak. Misalnya ketika kita menuju ke alamat "mail.yahoo.com" maka server akan mengirim perintah pada browser untuk melakukan koneksi ssl. Antara client dan server terjadi pertukaran public key, lalu tunnel terbentuk untuk melakukan pengiriman data secara aman. Biasanya ssl digunakan pada halaman login website, agar username dan password yang dikirim tidak disadap oleh pihak ketiga.

  5. VPN
  6.            Virtual private network, dapat diimplementasikan secara hardware maupun software. Sama seperti ssl dan ssh, vpn juga mengenkripsi data yang dikirimkan. VPN bekerja dengan cara membuat tunnel protokol IP melalui salah satu port TCP atau UDP. VPN dapat digunakan untuk mengakses website yang di blokir pada negara tertentu, membuat koneksi point-to-point yang aman, memperkuat keamanan jaringan nirkabel, dan lain sebagainya.

oleh : alvin
READ MORE - Mengamankan koneksi data pada jaringan

Kamis, 02 Desember 2010

Metasploit overview

            Metasploit merupakan sofware security yang sering digunakan untuk menguji coba ketahanan suatu sistem dengan cara mengeksploitasi kelemahan software suatu sistem. Metasploit biasanya digunakan untuk menyerang application layer dengan 0 day attack yang merupakan metode penyerangan pada software yang belum di patch. Metasploit biasa dikaitkan dengan istilah remote exploitation, maksudnya penyerang berada pada jarak jangkauan yang jauh dapat mengendalikan komputer korban. Metasploit menyerang dengan cara mengirimkan exploit pada komputer korban. Exploit ini berisi payload yang sudah ditentukan oleh penyerang. Exploit adalah software yang berfungsi untuk memanfaatkan kelemahan pada software korban(misal web browser), setelah berhasil mengeksploitasinya exploit tersebut memasukkan payload ke dalam memori korban. Payload merupakan sebuah executable milik penyerang yang akan di run pada komputer korban dengan tujuan dapat mengendalikan komputer tersebut secara remote atau memasang backdoor, trojan, virus, worm, dan lain-lain. Terlepas dari penggunaan metasploit yang disalah gunakan untuk kejahatan, software ini juga membantu System Security untuk memperkuat pertahanan jaringannya dari ulah penyerang dari luar.

oleh : alvin
READ MORE - Metasploit overview

Senin, 07 Juni 2010

Coding Pascal - GABUNGAN_MAX_DAN_RATA_RATA

/**
* Copyright (c) 2010 Alvin Aditya H
* GNU GPL License
*/

PROGRAM "GABUNGAN_MAX_DAN_RATA_RATA"
VAR
A : ARRAY [1..10] OF INTEGER;
I,J,K,MAX : integer;
TOTAL : INTEGER;
RATA2 : REAL;

Begin
FOR I := 1 TO 10 DO
begin
write('masukkan angka ',I,'= ');
READ(A[I]);
end;
MAX := A[1];
write('MAX = ');
FOR J := 2 TO 10 DO
IF MAX <= A[J] THEN MAX := A[J];
WRITELN(MAX);

Total := 0;
FOR K := 1 TO 10 DO TOTAL := TOTAL + A[K];
RATA2 := TOTAL / 10;
WRITELN('rata-rata= ',RATA2);
End.
READ MORE - Coding Pascal - GABUNGAN_MAX_DAN_RATA_RATA

Coding Pascal - Menampilkan rangkuman nilai

/**
* Copyright (c) 2010 Alvin Aditya H
* GNU GPL License
*
*
*/

uses crt;
type tabel=RECORD
kd:string[8];
mk:string[30];
sks:Integer;
n:char;
end;
var i : integer;
nama:string[20];
npm:string[8];
kelas:string[5];
aw:ARRAY[1..10]OF tabel;
tsks:integer;
mt:integer;
bobot:integer;
jmt:integer;
ipk:real;

BEGIN
clrscr;
tsks := 0;
jmt := 0;
writeln('masukkan Nama : ');readln(nama);
writeln('masukkan NPM : ');readln(npm);
writeln('masukkan Kelas : ');readln(kelas);
for i:=0 to 9 do
begin
writeln('masukkan kode : ');readln(aw[i].kd);
writeln('masukkan mata kuliah : ');readln(aw[i].mk);
writeln('masukkan sks : ');readln(aw[i].sks);
writeln('masukkan nilai(pake huruf gede) : ');readln(aw[i].n);
end;
writeln('Rangkuman Nilai Mahasiswa :');
writeln('---------------------------------------');
writeln('no| Kode | Mata Kuliah | SKS | Nilai |');
for i:=0 to 9 do
begin
writeln('|',i+1,'|',aw[i].kd,'|',aw[i].mk,'|',aw[i].sks,'|',aw[i].n,'|');
writeln('------------------------------------------------------------');
end;

for i:=0 to 9 do
tsks := tsks + aw[i].sks;
for i:=0 to 9 do
begin
case aw[i].n of
'A': bobot:= 4;
'B': bobot:= 3;
'C': bobot:= 2;
'D': bobot:= 1;
'E': bobot:= 0;
end;
mt := aw[i].sks*bobot;
jmt := jmt+mt;
end;
writeln('Total SKS yang diperoleh : ',tsks);
ipk := jmt/tsks;
writeln('Indeks prestasi kumulatif :',ipk);
readln;
END.
READ MORE - Coding Pascal - Menampilkan rangkuman nilai

Open source and free software is my choice

Yang tidak mengerti bhs.inggris, judul diatas artinya(Software sumber terrbuka dan software bebas adalah pilihanku)

Arti free software bukan berarti software gratis, melainkan software yang bebas dalam penggunaanya. Open source software berarti software yang kode sumbernya(koding) terbuka/boleh dilihat umum(public).
Open source dan free software harusnya bukan hanya menjadi pilihan saya seorang, melainkan juga harus menjadi pilihan semua masyarakat, untuk mencegah pembajakan.
Saat ini masih banyak orang yang menggunakan software bajakan. Untuk mengatasi hal ini free and open source software merupakan alternative. Misalnya mengganti Operating Sistem Windows dengan Linux yang free. Microsoft Office digganti dengan Open Office, Photoshop dengan Gimp, Corel Draw dengan Inkscape, dll.

Kalau masalah susah atau kesulitan dalam menggunakan software ini, ini hanya masalah kebiasaan dalam menggunakannya.

by alvin
READ MORE - Open source and free software is my choice

Etherape : a graphical network browser


Etherape dikembangkan oleh Juan Toledo, merupakan alat yang berfungsi untuk men-scan jaringan atau untuk membantu menganalisis jaringan. Etherape menampilkan aktivitas jaringan secara grafis. Host jaringan ditampilkan dalam gambar lingkaran dengan ukuran bervariasi sesuai dengan pengaturan "node size variabel" pada preferensi. Sedangkan lalu lintas antara host digambarkan dengan garis yang berwarna sesuai dengan jenis protokol yang digunakan. User dapat mengatur atau memilih mode protokol yang dipantau, seperti : ethernet, IP, TCP, Token Ring, FDDI. User dapat menampilkan window protokol melalui menu View. Window ini menyajikan keterangan yang lebih detail daari berbagai macam paket data yang tertangkap oleh etherape.

oleh alvin
READ MORE - Etherape : a graphical network browser
Add to Technorati Favorites Add to Technorati Favorites
OrangUNIX © 2008 Template by:
SkinCorner