Jadi 38 kongruen dengan 13 dalam modulus 5.
Catatan: a ≡ b mod m dapat juga ditulis: a mod m = b ,dan a = b + km
Dengan b = sisa, k = hasil bagi.
2.3.7. Inversi Modulo
Jika a dan b adalah relatif prima atau PBB a,b = 1; serta b 1, maka invers perkalian dari a mod b =
dan dapat ditulis:
a. = 1 mod b
……9 dari defenisi relatif prima diketahui bahwa PBB a,b = 1 dan menurut persamaan 4
terdapat bilangan bulat p dan q sedemikian hingga: pa + qb = 1
yang mengimplikasikan bahwa: pa + qb = 1 mod b
dan karena qb
≡ 0 mod b maka
pa ≡ 1 mod b
kekongruenan yang terakhir ini berarti bahwa p adalah invers perkalian dari a mod b Contoh:
Invers dari 17 mod 7 adalah = …? Solusi:
PBB 17,7 = 1, maka 17 dan 7 adalah relative prima, sehingga pasti memiliki invers. 17 = 7.2 + 3
→ 3 = 17 – 7.2 7 = 3.2 + 1
→ 1 = 7- 3.2 3 = 1.3 + 0
1 = 7 – 3.2 = 7 – 17 – 7.2.2
= 7 – 2.17 + 14.7 1 = 15.7 – 2.17
atau - 2.17 + 15.7 = 1
Universitas Sumatera Utara
Sudah memenuhi bentuk: p.a + q.b = 1, dengan p = invers perkalian, jadi kita telah memperoleh invers perkalian dari 17 mod 7 yaitu: p = -2.
2.4. Algoritma IDEA
Kriptografi IDEA International Data Encryption Algorithm diperkenalkan pertama kali tahun 1991 oleh Xuejia Lai dan James L Massey. Algoritma ini dimaksudkan
sebagai pengganti DES Data Encryption Standard. IDEA adalah revisi minor cipher yang lebih awal, yakni PES, dan pada awalnya disebut IPES Improved PES. IDEA
didesain di bawah kontrak Hasler Foundation Al Bahr, Brian. 2007. Algoritma utama dari sistem kriptografi IDEA adalah sebagai berikut :
1. Proses enkripsi : e
k
2. Proses dekripsi : d M = C
k
C = M
Dimana : e = adalah fungsi enkripsi
d = adalah fungsi dekripsi M = adalah pesan terbuka plainteks
C = adalah pesan rahasia cipherteks K = adalah kunci enkripsi atau dekripsi
Dalam melakukan enkripsi, algoritma IDEA memakai delapan putaran. Setiap putarannya digunakan enam kunci. Pesan dekripsi menggunakan blok penyandi yang
sama dengan blok proses enkripsi dimana kunci dekripsinya diturunkan dari kunci enkripsi. Algoritma ini menggunakan operasi campuran dari tiga operasi aljabar yang
berbeda, yaitu XOR, operasi penjumlahan modulo 2
16
dan operasi perkalian modulo 2
16
+ 1 . Semua operasi ini digunakan dalam pengoperasian sub-blok 16-bit. Prinsip perancangan dari algoritma kriptografi IDEA adalah :
1Diffusion Konfusi Konsep ini dilakukan dengan mengusahakan setiap bit plainteks dan setiap bit kunci
untuk mempengaruhi setiap bit cipherteks, yang diberikan oleh kotak MA
Universitas Sumatera Utara
Multiplication - Addition, blok dasar ini hanya menggunakan dua kunci untuk setiap putarannya, dan masukannya adalah F1, F2 sama seperti keluarannya G1, G2 yang
dihubungkan oleh penjumlahan mod 2
16
dan perkalian mod 2
16
+1, serta XOR.
Gambar 2.7 Kotak MA Multiplication - Addition
2Confusion Difusi Konsep ini dilakukan dengan menggabung tiga prinsip operasi grup aljabar yang
berbeda-beda : 1. XOR penambahan modulo 2.
2. Penambahan modulo 2 3. Perkalian dengan modulo 2
16 16
+ 1
Algoritma ini melakukan iterasi yang terdiri dari 8 putaran dan 1 transformasi keluaran pada putaran ke-9, dimana gambaran komputasi dan transformasi keluaran
ditunjukkan oleh gambar 2.8.
Universitas Sumatera Utara
2.4.1. Proses Enkripsi IDEA
Pada proses enkripsi algoritma kriptografi simetri IDEA yang ditunjukkan oleh gambar 2.7, terdapat tiga operasi yang berbeda untuk pasangan subblok 16-bit yang
digunakan, yakni: 1XOR dari 2 subblok 16-bit; bit per bit.
2Penjumlahan modulo 2 subblok 16-bit, dimana kedua subblok itu dianggap
sebagai representasi biner dari integer biasa, 3Perkalian modulo
+1 2 subblok 16-bit, dimana kedua subblok 16-bit itu dianggap sebagai representasi biner dari integer biasa kecuali subblok nol
dianggap mewakili integer 2
16
.
Simbol dari ketiga operasi tersebut yaitu: 1.
= penjumlahan mod 2.
⊗ = perkalian mod +1
3. = XOR
Algoritma sistem kriptografi simetri IDEA yakni: aBlok masukan pesan 64-bit mula-mula dibagi menjadi 4 subsub blok 16-bit,
yakni: X1, X2, X3, X4. bKeempat subblok 16-bit tadi kemudian ditransformasikan menjadi subblok
16-bit, Y1, Y2, Y3, Y4. Semua proses ini berada di bawah kendali 52 subblok kunci 16-bit yang dibentuk dari blok kunci 128-bit.
cKeempat subblok 16-bit: X1, X2, X3, X4, digunakan sebagai masukan putaran pertama dari algoritma IDEA. Dapat dilihat dari gambar bahwa
dalam setiap putaran dilakukan operasi XOR, penjumlahan modulo dan perkalian modulo.
dDari gambar juga terlihat bahwa keluaran dari putaran sebelumnya merupakan masukan dari putaran berikutnya. Hal ini terus berlangsung
sampai 8 putaran. Pada putaran terakhir putaran 9 dilakukan transformasi keluaran yang dikendalikan oleh 4 subblok kunci 16-bit. Sub
kunci diberi simbol Z.
Universitas Sumatera Utara
Gambar 2.8 Algoritma kriptografi simetri IDEA
eOperasi yang dilakukan pada setiap putaran dapat dirangkum sebagai berikut:
1 Perkalian dengan
Z ke-1 round ke-1 2 Penjumlahan
dengan Z ke-2 round ke-1
3 Pejumlahan dengan
Z ke-3 round ke-1 4 Perkalian
dengan Z ke-4 round ke-1
5 Operasi XOR hasil langkah 1 dan 3 6 Operasi XOR hasil langkah 2 dan 4
7 Perkalian hasil langkah 5 dengan Z ke-5 round ke-1
8 Penjumlahan hasil langkah 6 dengan langkah 7 9 Perkalian hasil langkah 8 dengan
Z ke-6 round ke-1 10 Penjumlahan hasil langkah 7 dengan 9
Universitas Sumatera Utara
11 Operasi XOR hasil langkah 1 dan 9 12 Operasi XOR hasil langkah 3 dan 9
13 Operasi XOR hasil langkah 2 dan 10 14 Operasi XOR hasil langkah 4 dan 10
fKeluaran dari setiap putaran 11, 12, 13, 14 menjadi masukan bagi operasi selanjutnya. Pada putaran ke-9 dilakukan transformasi keluaran :
1 Perkalian dengan
Z ke-1 round ke-9 2 Penjumlahan
dengan Z ke-3 round ke-9
3 Penjumlahan dengan
Z ke-2 round ke-9 4 Perkalian
dengan Z ke-4 round ke-9
gSetelah semua selesai, keempat subblok 16-bit yang merupakan keluaran dari 9 putaran operasi tadi digabung kembali menjadi blok pesan rahasia
64-bit.
2.4.2. Pembentukan Subkunci Enkripsi
Sebanyak 52 subkunci yang masing-masing panjangnya 16-bit untuk proses enkripsi dibangkitkan dari kunci utama yang panjangnya 128-bit. Kunci utama dimasukkan
oleh pengguna. Pada tiap putaran, digunakan enam buah subkunci sehingga dalam delapan putaran digunakan 48 buah subkunci. Empat buah subkunci sisanya
digunakan untuk trasformasi akhir. Proses pembangkitan kuncinya key-schedule adalah sebagai berikut.
Kunci utama yang panjangnya 128-bit dipartisi tiap 16-bit sehingga dihasilkan delapan bagian dengan panjang masing-masing bagian 16-bit. Delapan bagian ini
menjadi delapan kunci pertama proses enkripsi. Kemudian blok kunci yang panjangnya 128-bit dirotasi dari kiri sepanjang 25-bit untuk dipartisi lagi menjadi 8
subblok kunci 16-bit berikutnya. Proses partisi dan rotasi diulangi terus sampai diperoleh 52 buah subkunci , yang panjang tiap subkuncinya 16-bit. Pada tabel berikut
ditunjukkan proses pembangkitan kunci pada algoritma IDEA.
Universitas Sumatera Utara
Tabel 2.1 Penggunaan Kunci di Tiap Putaran
Round i = 1
0 – 15 16 – 31
32 – 47 48 – 63
64 – 79 80 – 95
i = 2
96 – 111 112 – 127 25 – 40 41 – 56
57 – 72 73 – 88
i = 3 89 – 104 105 – 120
121 – 8 9 – 24
50 – 65 66 – 81
i = 4 82 – 97
98 – 113 114 – 1
2 – 17 18 – 33
34 – 49
i = 5 75 – 90
91 – 106 107 – 122 123 – 10 11 – 26
27 – 42
i = 6
43 – 58 59 – 74
100 – 115 116 – 3
4 – 19 20 – 35
i = 7 36 – 51
52 – 67 68 – 83
84 – 99 125 – 12
13 – 28
i = 8 29 – 44
45 – 60 61 – 76
77 – 92 93 – 108 109 – 124
i = 9 22 – 37
38 – 53 54 – 69
70 – 85
Pada setiap operasi pada kunci 128-bit, 8 kunci dengan panjang 16-bit diperoleh. Namun hanya enam kunci yang digunakan pada tiap putaran. Kunci yang tersisa
disimpan untuk putaran berikutnya.
2.4.3. Proses Dekripsi IDEA
Proses dekripsi menggunakan algoritma yang sama dengan proses enkripsi tetapi 52 buah subblok kunci yang digunakan masing-masing merupakan hasil turunan 52 buah
subblok kunci enkripsi. Pada kasus ini akan diambil invers dari operasi XOR, penambahan oleh mod
dan perkalian mod +1, tergantung pada operasi yang
dibuat pada fase enkripsi. Setiap subkunci dekripsi adalah salah satu dari invers penambahan atau perkalian yang berkorespondensi dengan subkunci enkripsi. Tabel
subblok kunci enkripsi yang digunakan pada proses enkripsi dapat dilihat pada tabel 2.2. Tabel subblok kunci dekripsi yang diturunkan dari subblok kunci enkripsi dapat
dilihat pada tabel 2.3.
Keterangan tabel: • Z
-1
merupakan invers perkalian modulo 2
16
+1 dari Z, dimana Z Z
-1
• -Z merupakan invers penjumlahan modulo 2 = 1
16
dari Z, dimana Z Z
-1
= 0
Universitas Sumatera Utara
Tabel 2.2 Subblok Kunci Enkripsi
Putaran ke-1 Putaran ke-2
Putaran ke-3 Putaran ke-4
Putaran ke-5 Putaran ke-6
Putaran ke-7 Putaran ke-8
Transformasi Output
Tabel 2.3 Subblok Kunci Dekripsi
Putaran ke-1 Putaran ke-2
Putaran ke-3 Putaran ke-4
Putaran ke-5 Putaran ke-6
Putaran ke-7 Putaran ke-8
Transformasi Output
2.4.3.1. Invers Penjumlahan Modulo 2
16
atau Modulo 65536
A adalah invers penjumlahan dari B iff A + B mod 65536 = 0 Untuk mencari invers penjumlahan, harus dipenuhi:
Universitas Sumatera Utara
A+B ≡ 0 mod 2
16
kongruen dengan A+B mod 2
16
= 0
Dengan A adalah invers penjumlahan B, sehingga: A = 2
16
– B mod 2
16
Contoh: Invers penjumlahan 189
Solusi: A = 2
16
– B mod 2
16
= 2
16
– 189 mod 2
16
= 2
16
= 65537 – 189 – 189
= 65347
Jadi, invers penambahan dari 189 adalah 65347 atau 189+65347 mod 2
16
= 0
2.4.3.2. Invers Perkalian Modulo 2
16
+ 1 = Modulo 65537
1A adalah invers perkalian dari B iff A × B mod 65537 = 1 2Gunakan algoritma Extended Euclidean untuk mencari invers perkalian.
2.4.3.3. Algoritma Extended Euclidean
Karena 2
16
+ 1 adalah bilangan prima, maka B dan 2
16
+ 1 adalah saling prima relatif, untuk B
≠ 2
16
+ 1. Sehingga invers perkalian B mod 2
16
AB ≡ 1 mod 2
+ 1 adalah bilangan bulat A sedemikian hingga:
16
kongruen dengan + 1
AB mod 2
16
+ 1 = 1
Universitas Sumatera Utara
Karena 2
16
+ 1 dan B relatif prima, maka PBB B, 2
16
+ 1 =1, dan menggunakan algoritma Extended Euclidean terdapat:
p.B + q.2
16
+ 1 = 1
dengan p adalah invers dari B mod 2
16
A.B + q.2 + 1 atau p = A, sehingga dapat juga ditulis:
16
Langkah-langkah: + 1 = 1
1Dengan algoritma Extended Euclidean diperoleh rangkaian pembagian 2Ekspresikan 1 sama dengan kombinasi linier dari B dan 2
16
+ 1, sehingga diperoleh : AB + q.2
16
3Maka A adalah invers dari B mod 2 + 1 = 1
16
Contoh: + 1
Tentukan invers perkalian dari 125 mod 2
16
Solusi: + 1
1Dengan algoritma Extended Euclidean diperoleh: 65537 = 524125 + 37
→ 37 = 65537 – 524125 125 = 337 + 14
→ 14 = 125 – 337 37 = 214 + 9
→ 9 = 37 – 214 14 = 19 + 5
→ 5 = 14 – 19 9 = 15 + 4
→ 4 = 9 – 15 5 = 14 + 1
→ 1= 5 – 14 4 =41 + 0
Semua kombinasi di atas digunakan untuk membentuk: AB + q.2
16
Sehingga benar bahwa PBB125, 2 + 1 = 1
16
+ 1 = 1
21 = 5 – 1.4 = 5 – 19 – 1.5
= 1.5 – 1.9 + 1.5
Universitas Sumatera Utara
= 2.5 – 1.9 = 2 14 – 1.9 – 1.9
= 2.14 – 2.9 – 1.9 = 2.14 – 3.9
= 2.14 – 337 – 2.14 = 2.14 – 3.37 + 6.14
= 8.14 – 3.37 = 8125 – 3.37 – 3.37
= 8.125 – 24.37 – 3.37 = 8.125 – 27.37
= 8.125 – 2765537-524.125 = 8.125 – 272
16
= 8.125 – 272 + 1 – 524.125
16
= 14156.125 – 272 + 1 + 14148.125
16
Sudah diperoleh bentuk: 1 = AB + q.2 + 1
16
Sehingga diperoleh 14156 adalah invers perkalian dari 125 mod 2
+ 1
16
Dan 14156125 ≡ 1 mod 2
+ 1
16
+ 1
2.4.4. Contoh Komputasi Penggunaan Algoritma IDEA
2.4.4.1. Proses enkripsi
Asumsi diberikan 64-bit plainteks X: X = X1 ,X2, X3, X4 = 7fa9 1c37 ffb3 df05
→ dalam hexadesimal Untuk lebih jelas, lihat tabel 2.1 pada pembahasan pembentukan subkunci enkripsi.
Subkunci-subkunci enkripsi yang berhasil dibentuk dapat dilihat pada tabel 2.4.
Panjang plainteks 64-bit yang dipartisi menjadi empat subblok plainteks dengan panjang 16-bit per blok dan kunci enkripsi 52 subkunci yang juga terdiri dari
16-bit per blok, dilakukan pada blok satu dengan blok lainnya: operasi XOR, perkalian mod 2
16
+1 dan penambahan mod 2
16
, dari round pertama sampai round
Universitas Sumatera Utara
terakhir transformasi sehingga menghasilkan cipherteks Y 64-bit, yang juga merupakan gabungan dari empat subblok cipherteks 16-bit: Y1, Y2, Y3, Y4.
Tabel 2.4 Subkunci-subkunci Enkripsi yang Berhasil Dibentuk
Putaran ke-1 5a14
fb3e 021c
79e0 6081
46a0 Putaran ke-2
117b ff03
7c04 38f3
c0c1 028d
Putaran ke-3 4022
f7fe 06b4
29f6 e781
8205 Putaran ke-4
1a80 45ef
fc0d 6853
ecf8 0871
Putaran ke-5 0a35
008b dff8
1ad0 a7d9
f010 Putaran ke-6
e3cf 0304
17bf f035
a14f b3e0
Putaran ke-7 21c7
9e06 0814
6a01 6b42
9f67 Putaran ke-8
c043 8f3c
0c10 28d
022f 7fe0
Transformasi Output
cf80 871e
7818 2051
Cipherteks Y merupakan hasil dari output round terakhir transformasi, yaitu: Y = Y1, Y2, Y3, Y4 = 106b dbfd f323 0867.
2.4.4.2. Proses dekripsi
Universitas Sumatera Utara
Dekrispi dilakukan dengan cara yang sama dengan proses enkripsi, kecuali pembentukan subkunci-subkuncinya. Input merupakan blok cipherteks 64-bit dan
outputnya merupakan plainteks. Untuk melakukan dekripsi, coba perhatikan kembali tabel 2.3.
Pada dasarnya, ada empat kunci pertama untuk dekripsi, yaitu: Z1 =
Z2 = Z3 =
Z4 =
Tabel 2.5 Hasil Perhitungan Setiap Subblok 16-bit dalam 9 Round
Subkunci untuk melakukan dekripsi dapat dilihat pada tebel 2.6. Round
Round output X1
X2 X3
X4
7fa9 1c37
ffb3 df05
1 c579
f2ff 0fbd
0ffc 2
d7a2 80cb
9a61 27c5
3 ab6c
e2f9 f3be
36bd 4
ef5b 9cd2
6808 3019
5 7e09
2445 d223
d639 6
4a6e d7ac
ac8c 8b09
7 244d
6f5c 4459
3a9c 8
0f86 7b0b
54df 75f9
9 106b
dbfd f323
0867
Y1 Y2
Y3 Y4
Universitas Sumatera Utara
Tabel 2.6
Subkunci-subkunci Dekripsi yang Berhasil Dibentuk Putaran
ke-1 =
= =
= =
=
9194 78e2
87e8 712a
022f 7fe0
Putaran ke-2
= =
= =
= =
a24c f3f0
70c4 3305
6b42 9f67
Putaran ke-3
= =
= =
= =
c579 f7ec
61fa bf28
a14f b3e0
Putaran ke-4
= =
= =
= =
c53c e841
fcfc 3703
a7d9 f010
Putaran ke-5
= =
= =
= =
cc14 2008
ff75 24f6
ecf8 0871
Putaran ke-6
= =
= =
= =
4396 03f3
ba11 dfa7
e781 8205
Putaran ke-7
= =
= =
= =
18a7 f94c
0802 9a13
c0c1 028d
Putaran =
= =
= =
=
Universitas Sumatera Utara
ke-8 55ed
83fc 00fd
2cd9 6081
46a0 Transformasi
Output =
= =
=
0dd8 04c2
fde4 4fd0
Universitas Sumatera Utara
Bab 3
ANALISIS DAN PEMODELAN PERANGKAT LUNAK
3.1.Analisis Permasalahan Algoritma IDEA
Tahapan analisis terhadap suatu sistem dilakukan sebelum tahapan perancangan dilakukan. Tujuan diterapkannya analisis terhadap suatu sistem adalah untuk
mengetahui alasan mengapa sistem tersebut diperlukan, merumuskan kebutuhan- kebutuhan dari sistem tersebut untuk mereduksi sumber daya yang berlebih serta
membantu merencanakan penjadwalan pembentukan sistem, meminimalisir penyimpangan yang mungkin terdapat di dalam sistem tersebut sehingga fungsi yang
dalam sistem tersebut bekerja secara optimal.
Salah satu unsur pokok yang harus dipertimbangkan dalam tahapan analisis sistem ini yaitu masalah perangkat lunak, karena perangkat lunak yang digunakan
haruslah sesuai dengan masalah yang akan diselesaikan. Untuk itu, analisis yang dilakukan terhadap perangkat lunak algoritma IDEA terbagi ke dalam dua aspek,
yaitu analisis kebutuhan perangkat lunak algoritma IDEA dan analisis fungsi perangkat lunak algoritma IDEA.
3.2.Analisis Kebutuhan Algoritma IDEA
Faktor yang mendasari dibentuknya perangkat lunak dengan algoritma kriptografi IDEA adalah keamanan data. Keamanan telah menjadi aspek yang sangat penting dari
suatu sistem informasi. Sebuah informasi umumnya hanya ditujukan bagi segolongan tertentu. Oleh karena itu sangat penting untuk mencegahnya jatuh kepada pihak-pihak
lain yang tidak berkepentingan. Untuk keperluan tersebut, maka diperlukan teknik kriptografi dengan metode enkripsi dan dekripsi. Salah satu metode enkripsi dan
dekripsi data yang digunakan adalah algoritma IDEA.
Universitas Sumatera Utara
Setiap sistem yang akan dibangun selalu memiliki kebutuhan. Analisis yang dilakukan terhadap kebutuhan suatu sistem dapat berfungsi untuk mereduksi sumber
daya yang berlebih dari sistem tersebut serta membantu pembentukan penjadwalan pembentukan sistem Pressman. R.S., 2002. Analisis yang dilakukan untuk mencari
kebutuhan dari perangkat lunak algoritma IDEA dapat dilakukan dengan cara menentukan nama dari perangkat lunak yang akan dibangun, mengetahui siapa yang
akan menggunakan perangkat lunak tersebut, memahami konsep teknologi yang akan dipakai, tampilan antar muka yang akan dipergunakan, teknik apa yang dipergunakan
untuk membentuknya, serta apa yang akan dihasilkan oleh perangkat lunak tersebut.
Berdasarkan analisis yang dilakukan terhadap keperluan perangkat lunak, maka dapat diambil keputusan bahwa nama dari perangkat lunak yang akan dibangun
adalah IdeaCrypt, dimana Crypt menunjukkan fungsi dari perangkat lunak dan Idea
merupakan nama algoritma yang di gunakan. Perangkat lunak yang dibangun nantinya akan menghasilkan file kunci yang berisikan pasangan kunci enkripsi dan
kunci dekripsi yang diperoleh dari proses pembentukan kunci, file cipherteks dari proses enkripsi dan menghasilkan file plainteks dari proses dekripsi. Format file
cipherteks nantinya akan tetap sama dengan file asli tetapi tidak dapat dipahami oleh pihak yang tidak berhak. Kemudian pengguna dari perangkat lunak ini adalah setiap
individu yang membutuhkan keamanan data, untuk itu maka sistem yang dibangun harus dapat dipakai oleh setiap orang secara umum. Maka perangkat lunak yang
dibentuk harus memiliki antarmuka yang sederhana dan mudah untuk dipergunakan. Untuk memenuhi kebutuhan tersebut maka perangkat lunak algoritma IDEA dibangun
pada sistem operasi dengan platform Microsoft Windows XP, dan bahasa pemrograman yang dipergunakan adalah C++.
Untuk memudahkan perancangan perangkat lunak dengan algoritma IDEA tersebut maka dibutuhkan algoritma dan flowchart dari setiap mekanisme yang ada.
Alasan penggunaan algoritma dan flowchart adalah karena dengan menggunakan algoritma dan flowchart dapat digambarkan secara jelas alur dari proses, struktur
perulangan, teknik pengambilan keputusan serta mekanisme kalkulasi yang ada pada sistem. Setelah algoritma dan flowchart terbentuk, barulah dilakukan proses
pembentukan sistem yang sebenarnya.
Universitas Sumatera Utara
3.3.Pemodelan Fungsional
Hasil yang diharapkan dari tahapan membangun suatu sistem adalah bagaimana caranya agar sistem yang dibangun memiliki fungsi yang berdaya guna maksimal.
Oleh karena itu, maka fungsi-fungsi yang ada pada sistem tersebut perlu dianalisis. Pada sistem kriptografi IDEA, secara garis besar terdapat tiga fungsi, yaitu: enkripsi
pesan, dekripsi pesan, dan pembentukan subkunci.
Pemodelan fungsional menggambarkan aspek dari sistem yang berhubungan dengan transformasi dari nilai, seperti fungsi, pemetaan, batasan, dan ketergantungan
fungsional. Pemodelan fungsional menangkap sesuatu yang dikerjakan oleh sistem tanpa memperhatikan bagaimana dan kapan hal itu dikerjakan.
3.4. DFD Data Flow Diagram dan Spesifikasi Proses