ArticlePDF Available

Abstract

Pengujian integritas sebuah file merupakan suatu proses dalam menjaga keaslian dari barang digital agar barang digital terbukti keabsahannya dalam kepemilikan atau bahkan dapat menjadi alat bukti yang diterima dalam persidangan. Fungsi hash merupakan sebuah standar untuk menguji integritas dan autentisitas bukti digital tersebut. Checksum adalah salah satu fungsi hash yang akan digunakan pada penelitian ini, dimana dapat dibilang mewakili sebuah identitas file yang dihitung secara acak dari blok data digital dan digunakan untuk memeriksa dan mendeteksi apakah sebuah file masih asli atau sudah mengalami perubahan akibat proses transmisi, penyimpanan atau modifikasi secara sengaja. Dan algoritma yang digunakan adalah algoritma SHA-3-512, karena algortima SHA-3-512 merupakan sistem yang membangun sebuah sistem yang lebih aman dengan memanfaatkan metode atau solusi yang sudah diteliti dan diharapkan dapat diandalkan baik dari segi integritas data karena menyediakan cara tertentu agar dapat menggeneralisasikan fungsi hash dengan hasil keluaran yang beragam dalam pengujian integritas file. I. PENDAHULUAN Perkembangan teknologi dan informasi dalam kehidupan saat ini memberikan kemudahan bagi kita untuk memperoleh maupun menyajikan data dan informasi, sehingga perolehan dan penyajiannya pun dapat dilakukan dalam waktu yang relatif singkat. Data dan informasi juga sudah tidak membutuhkan tempat yang besar serta mudah dipindah dan dipertukarkan. Penggunaan data dan informasi tidak lagi dibatasi oleh ruang dan waktu. Teknologi internet memungkinkan bagi setiap penggunga diseluruh dunia, untuk mengakses dan berbagi data dan informasi, kapanpun dan dimanapun. Namun seringkali keutuhan data berubah tidak seperti pada aslinya yang disebabkan oleh berbagai hal, diantaranya disebabkan terserang virus dan juga diubah oleh orang lain, dan kebanyakan orang tidak memperhatikan keutuhan data tersebut sehingga data tidak utuh seperti pada aslinya untuk mengimbangi semakin pentingnya informasi dan perlu ditunjang oleh kemajuan pengembangan software. Secara umum, masalah keamanan di Internet dapat dipandang dari dua sisi penting. Sisi pertama adalah integritas data yang dikirimkan melalui jaringan Internet dan sisi berikutnya adalah tingkat keamanan dalam jaringan komputer itu sendiri. Ancaman terhadap keamanan integritas data dalam Internet, yaitu modification dan fabrication. Modification merupakan ancaman terhadap integritas, yaitu: orang yang berhasil mendapatkan akses informasi dari dalam sistem komputer dan dapat melakukan perubahan terhadap informasi. Fabrication merupakan ancaman terhadap integritas, yaitu orang yang tidak berhak meniru atau memalsukan suatu objek ke dalam sistem. Untuk menjaga integritas data tetap terjaga, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihakpihak yang tidak berhak. Bentuk-bentuk manipulasi yang dapat dilakukan antara lain penyisipan, penghapusan dan pensubstitusian data lain ke dalam data yang sebenarnya. Berdasarkan latar belakang tersebut, penelitian ini mengangkat tema mengenai sebuah pengujian integritas dan autentisitas suatu data atau file untuk diperiksa dan dideteksi apakah data atau file tersebut masih asli atau sudah mengalami perubahan akibat proses transmisi, penyimpanan atau modifikasi secara sengaja atau tidak sengaja. II. LANDASAN TEORI File File adalah kumpulan dari data dan informasi yang saling berhubungan dan juga tersimpan di dalam ruang penyimpanan sekunder, dapat diartikan sebagai arsip atau data yang tersimpan di dalam komputer. Memiliki beberapa tipe, diantaranya adalah tipe data terdiri dari character, numeric, dan binary. Selain itu, ada juga file yang bertipe program.[1] Menurut McLeod (Pearson), dalam [1] pengertian file adalah koleksi rekaman (record) yang saling berhubungan satu dengan yang lainnya, seperti satu
IMPLEMENTASI CHECKSUM
ALGORITMA SHA-3-512 UNTUK PENGUJIAN INTEGRITAS FILE
Aji Mats Mail Ihsan Fawzan
Department of Informatics Departement of Informatics
Siliwangi University Siliwangi University
Tasikmalaya, Indonesia Tasikmalaya, Indonesia
177006017@unsil.ac.id 177006097@unsil.ac.id
Abstract Pengujian integritas sebuah file merupakan suatu
proses dalam menjaga keaslian dari barang digital agar barang
digital terbukti keabsahannya dalam kepemilikan atau bahkan
dapat menjadi alat bukti yang diterima dalam persidangan. Fungsi
hash merupakan sebuah standar untuk menguji integritas dan
autentisitas bukti digital tersebut. Checksum adalah salah satu
fungsi hash yang akan digunakan pada penelitian ini, dimana
dapat dibilang mewakili sebuah identitas file yang dihitung secara
acak dari blok data digital dan digunakan untuk memeriksa dan
mendeteksi apakah sebuah file masih asli atau sudah mengalami
perubahan akibat proses transmisi, penyimpanan atau modifikasi
secara sengaja. Dan algoritma yang digunakan adalah algoritma
SHA-3-512, karena algortima SHA-3-512 merupakan sistem
yang membangun sebuah sistem yang lebih aman dengan
memanfaatkan metode atau solusi yang sudah diteliti dan
diharapkan dapat diandalkan baik dari segi integritas data karena
menyediakan cara tertentu agar dapat menggeneralisasikan fungsi
hash dengan hasil keluaran yang beragam dalam pengujian
integritas file.
Keywords Integritas File, Fungsi Hash, Checksum, dan
Algortima SHA-3-512
I. PENDAHULUAN
Perkembangan teknologi dan informasi dalam
kehidupan saat ini memberikan kemudahan bagi kita
untuk memperoleh maupun menyajikan data dan
informasi, sehingga perolehan dan penyajiannya pun
dapat dilakukan dalam waktu yang relatif singkat.
Data dan informasi juga sudah tidak membutuhkan
tempat yang besar serta mudah dipindah dan
dipertukarkan. Penggunaan data dan informasi tidak
lagi dibatasi oleh ruang dan waktu. Teknologi internet
memungkinkan bagi setiap penggunga diseluruh
dunia, untuk mengakses dan berbagi data dan
informasi, kapanpun dan dimanapun. Namun
seringkali keutuhan data berubah tidak seperti pada
aslinya yang disebabkan oleh berbagai hal,
diantaranya disebabkan terserang virus dan juga
diubah oleh orang lain, dan kebanyakan orang tidak
memperhatikan keutuhan data tersebut sehingga data
tidak utuh seperti pada aslinya untuk mengimbangi
semakin pentingnya informasi dan perlu ditunjang
oleh kemajuan pengembangan software. Secara
umum, masalah keamanan di Internet dapat
dipandang dari dua sisi penting. Sisi pertama adalah
integritas data yang dikirimkan melalui jaringan
Internet dan sisi berikutnya adalah tingkat keamanan
dalam jaringan komputer itu sendiri.
Ancaman terhadap keamanan integritas data
dalam Internet, yaitu modification dan fabrication.
Modification merupakan ancaman terhadap
integritas, yaitu: orang yang berhasil mendapatkan
akses informasi dari dalam sistem komputer dan
dapat melakukan perubahan terhadap informasi.
Fabrication merupakan ancaman terhadap
integritas, yaitu orang yang tidak berhak meniru atau
memalsukan suatu objek ke dalam sistem. Untuk
menjaga integritas data tetap terjaga, sistem harus
memiliki kemampuan untuk mendeteksi manipulasi
data oleh pihakpihak yang tidak berhak. Bentuk-
bentuk manipulasi yang dapat dilakukan antara lain
penyisipan, penghapusan dan pensubstitusian data
lain ke dalam data yang sebenarnya.
Berdasarkan latar belakang tersebut, penelitian ini
mengangkat tema mengenai sebuah pengujian
integritas dan autentisitas suatu data atau file untuk
diperiksa dan dideteksi apakah data atau file tersebut
masih asli atau sudah mengalami perubahan akibat
proses transmisi, penyimpanan atau modifikasi secara
sengaja atau tidak sengaja.
II. LANDASAN TEORI
File
File adalah kumpulan dari data dan informasi yang
saling berhubungan dan juga tersimpan di dalam
ruang penyimpanan sekunder, dapat diartikan sebagai
arsip atau data yang tersimpan di dalam komputer.
Memiliki beberapa tipe, diantaranya adalah tipe data
terdiri dari character, numeric, dan binary. Selain itu,
ada juga file yang bertipe program.[1]
Menurut McLeod (Pearson), dalam [1] pengertian
file adalah koleksi rekaman (record) yang saling
berhubungan satu dengan yang lainnya, seperti satu
file dari seluruh record yang berisi bidang kode-kode
mata kuliah dan namanya.
Menurut Rachmad Hakim S, dalam [1] pengertian
file adalah kumpulan dokumen yang berisi informasi
tertentu dan dapat dibuka dengan menggunakan
program komputer tertentu.
Integritas Data
Secara etimologis, integritas berarti kesatuan.
Obyek integritas tersebut adalah data, maka integritas
data merupakan keutuhan dan kesatuan data dalam
basis data sehingga data tersebut dapat menjadi
sumber informasi yang dapat digunakan. Munculnya
istilah integritas terutama disebabkan oleh adanya
konsep basis data relasional dan adanya normalisasi
yang menghasilkan keseluruhan data menjadi sangat
penting sehingga benar benar terjadi keutuhan data
dapat terjaga. [2]
Integritas suatu data yang dikirim terkadang juga
menjadi pertanyaan, apakah data tersebut benar-benar
dikirim oleh orang yang bersangkutan atau tidak, dan
apakah isi dari data benar-benar otentik seperti
sebelum dikirim. [3]
Fungsi Hash
Fungsi hash satu arah (one-way hash function)
adalah salah satu algoritma kriptografi modern yang
banyak dimanfaatkan untuk aplikasi pengamanan
data seperti integrasi pesan dan otentikasi. Sesuai
dengan namanya, fungsi ini bekerja dalam satu arah :
pesan yang sudah diubah menjadi message digest
tidak dapat dikembalikan lagi menjadi pesan semula.
Dua pesan yang berbeda akan selalu menghasilkan
nilai hash yang berbeda pula. Beberapa fungsi hash
satu-arah yang sudah dikembangkan, antara lain :
MD2, MD4, MD5, SHA (Secure Hash Function),
RIPMEND, WHIRLPOOL. [4]
Fungsi Hash sangat berguna dan muncul di hampir
semua aplikasi keamanan informasi, tidak hanya di
dunia kriptografi saja dan mempunyai fungsi
matematis yang mengubah nilai input numerik
menjadi nilai numerik yang terkompresi dimana
bertujuan mengkompresi nilai numerik yang
diinputkan. Inputan fungsi hash mempunyai panjang
yang beragam, namun outputan nilai hash akan selalu
mempunyai panjang yang tetap. Nilai yang
dikembalikan oleh fungsi hash disebut message
digest atau hanya nilai hash. Fungsi hash kriptografi
memang dirancang untuk mencegah mengembalikan
checksum yang sudah di hash kembali ke teks asli.
Namun, meskipun hampir tidak mungkin dibalik, itu
bukan berarti nilai hash 100% dijamin aman. [5]
Checksum
Checksum atau hash sum adalah suatu data
dengan ukuran tetap (fixed-size datum) yang dihitung
dari suatu blok data digital dengan tujuan untuk
mendeteksi kesalahan yang mungkin terjadi saat
proses transmisi atau penyimpanan. [6]
Integritas data dapat diperiksa pada langkah
selanjutnya dengan menghitung pula checksum dan
membandingkannya dengan data yang satunya (data
sumber/asli) untuk memastikan kecocokannya, jika
checksum tidak sama, maka hampir dipastikan bahwa
data tersebut telah berubah, baik disengaja maupun
tidak disengaja. [6]
Checksum adalah urutan angka dan huruf yang
digunakan untuk memeriksa kesalahan data, dapat
menggunakan utilitas checksum untuk meng-
konfirmasi salinan yang identik karena perubahan
kecil dalam file menghasilkan checksum yang sangat
berbeda. Untuk menghasilkan checksum, diperlukan
menjalankan program yang menempatkan file itu
melalui suatu algoritma, dan algoritma tipikal yang
digunakan biasanya MD5, SHA-1, SHA-256, dan
SHA-512. [7]
Secure Hash Algorithm-3 (SHA-3)
SHA dikembangkan oleh National Institute of
Standards and Technology (NIST) dan
dipublikasikan sebagai Federal Information
Processing Standards (FIPS 180) pada tahun 1993.
SHA-3 dibuat tidak untuk menggantikan SHA-2,
NIST membuat SHA-3 dikarenakan kekhawatiran
dikarenakan MD5, SHA-0, SHA-1 yang telah
berhasil ditembus. Karena itulah NIST mencari
algoritma hash alternatif yang sangat berbeda dengan
algoritma sebelumnya, yaitu SHA-3. [8]
SHA-3 memiliki ukuran keluaran yang beragam.
Jenis-jenis keluaran SHA-3 tersebut yaitu SHA-3
224, SHA-3 256, SHA-3 384, SHA-3 512,
SHAKE128 dan SHAKE256 Dikarenakan berbagai
jenis keluaran tersebut, maka SHA-3 ini masuk
kedalam jenis sponge function.
Sponge function menyediakan cara tertentu agar
dapat menggeneralisasikan fungsi hash dengan hasil
keluaran yang beragam. [9] yang menurut beberapa
penelitian algoritme ini akan lebih baik dibandingkan
SHA-256 jika dikompilasi pada arsitektur 64-bit.
Hasil menunjukkan, penggunaan SHA-512
menghasilkan waktu yang lebih baik 1%
dibandingkan SHA-256. Namun pada segi ukuran
token yang dihasilkan, SHA-512 lebih besar 2%
dibandingkan SHA-256. [10]
III. METODOLOGI
Gambar 3. 1 Metodologi yang digunakan
Metodologi yang digunakan terdiri atas
perencanaan, analisis, perancangan, prototipe,
pengembangan (implementasi dan pengujian), dan
pemakaian yang merupakan metode Norden, bahwa
Tahun 1958 penelitian dan pengembangan proyek
metode seperti itu. [11]
Tetapi ditambahkan kesimpulan sebagai hasil dari
pembahasan penelitian yang dilakukan
a. Perencanaan, pada tahap ini dilakukan analisis
kebutuhan yang akan menjadi landasan teori dalam
melakukan penelitian ini. Pada tahapan ini dilakukan
untuk mempelajari konsep Integritas File yang akan
dibuat Fungsi Hash juga mempelajari dasar dasar
Checksum untuk pemakaian Algortima SHA-3-512
pada penelitian ini
b. Analisis, dilakukan terhadap standar pengujian
integritas file agar dapat menghasilkan aplikasi yang
dapat membuktikan keintegritasan file.
c. Perancangan, dengan tujuan untuk mencari
solusi terbaik dari konsep dan teori yang telah dikaji
pada tahap sebelumnya menjadi sebuah perancangan
yang kemudian akan diimplementasikan agar dapat
menyelesaikan masalah yang dirasakan
d. Implementasi dan Pengujian, menerapkan
prinsip-prinsip analisis dan perancangan sistem
kedalam suatu bahasa pemrogramran dan melakukan
pengujian terhadap sistem atau aplikasi yang sudah
dirancang dan menilai sejauh mana sistem dapat
berfungsi sesuai dengan apa yang di harapkan.
e. Kesimpulan, merupakan runtutan paparan
dalam hasil dan pembahasan untuk menjawab
masalah yang telah diuji agar dapat memberikan
solusi dari apa yang menjadi masalah yang
melatarbelakangi pengujian atau penelitian.
IV. HASIL DAN PEMBAHASAN
Rancangan Implementasi Checksum
Gambar 4. 1 Rancangan Alur Proses Fitur Hash
Gambar 4. 2 Rancangan Alur Proses Fitur Check
Implementasinya, awal masuk aplikasi akan
terlihat tampilan seperti berikut :
Gambar 4. 3 Tampilan Awal
Yaitu form untuk upload file, textarea untuk
menginputkan kode, dan juga tombol fungsi untuk
hash dan check.
Output utama dari aplikasi ini berupa binary, di
bawah ini adalah hasil dari proses enkripsi dengan
algoritma sha3-512 secara default
Gambar 4. 4 Hasil proses enkripsi dengan algoritma sha3-512
secara default
Karena menyalin binary bisa merusak data, maka
dilakukan pembungkusan dengan hexa agar tidak
perlu memikirkan perbedaan encoding text karena
yang di tampilkannya sudah berupa string biasa dan
dapat dibaca.
Gambar 4. 5 Hasil Proses pembungkusan Binary dengan Hexa
Output dari aplikasi ini ada 2 kemungkinan yaitu
jika file bisa di verifikasi oleh kode yang diberikan,
dan juga jika file tidak bisa di verifikiasi oleh kode
yang diberikan.
Jika yang terjadi adalah kemungkinan pertama,
maka akan menghasilkan output File Seuai! Dan jika
yang terjadi adalah kemungkinan yang kedua, maka
akan menghasilkan output File tidak sesuai atau
sudah dimodifikasi!
Gambar 4. 6 Tampilan Output Ketika Tidak Sesuai
Gambar 4. 7 Tampilan Output Ketika Sesuai
Hasil
1. Mampu memberikan hasil convert hash
berupa text bertipe hexa yang dapat
digunakan sebagai bahan pengujian
integritas file
2. Mampu Melakukan pengujian integritas file
dengan berdasarkan file dan hash
menggunakan algortima SHA-3-512
3. Mampu memberikan pernyataan apakah file
yang diuji memiliki kecocokan yang sesuai
atau file yang diuji tidak sesuai karena tidak
cocok atau sudah dimodifikasi.
V. KESIMPULAN
Dengan lemahnya keamanan privasi yang kita
dapat dari pemerintah ataupun penyedia layanan
untuk berbagi file, maka dibutuhkan pengujian yang
dapat digunakan untuk mengetahui keutuhan dan
keaslian data dan informasi yang dikirim agar tidak
disalahgunakan oleh pihak lain dari informasi atau
pesan tersebut. Checksum menggunakan algoritma
SHA-3-512 diketahui dapat menjaga keutuhan dan
keaslian data dan informasi yang dikirim agar tidak
disalahgunakan oleh pihak lain dari informasi atau
pesan tersebut. Karena algoritma SHA-3 merupakan
hash alternatif yang sangat berbeda dengan algoritma
sebelumnya, yang diciptakan karena kekhawatiran
algoritma MD5, SHA-0, SHA-1 yang telah berhasil
ditembus.
DAFTAR PUSTAKA
[1] Maxmanroe, “Pengertian File, Jenis-Jenis
dan Fungsi File Pada Komputer,” Journal of
Chemical Information and Modeling, 2019.
[Online]. Available:
https://www.maxmanroe.com/vid/teknologi/k
omputer/pengertian-file.html. [Accessed: 21-
Dec-2019].
[2] D. Academy, “MySQL – Integritas Data
Dalam Basis Data,” Integritas Ref., no.
Integritas Ref., p. 1, 2019.
[3] A. Z. Falani and M. Zunaidy, “Sistem
Pengaman File dengan Menggunakan
Metode RSA Kriptografi & Digital
Signature,” 2013.
[4] B. Maryanto, “Penggunaan Fungsi Hash
Satu-Arah untuk Enkripsi Data,” Media
Inform., vol. 7, no. 3, pp. 110, 2008.
[5] Immersa-lab, “FUNGSI HASH DALAM
KRIPTOGRAFI,” immersa-lab.com, 2018.
[Online]. Available: https://www.immersa-
lab.com/fungsi-hash-dalam-kriptografi.htm.
[Accessed: 21-Dec-2019].
[6] M. D. Prihardhanto, “Studi Perbandingan
Beberapa Fungsi Hash dalam Melakukan
Checksum Berkas.”
[7] Id.if-koubou.com, “Apa itu Checksum (dan
Mengapa Harus Anda Peduli)?” [Online].
Available: https://id.if-
koubou.com/articles/how-to/what-is-a-
checksum-and-why-should-you-care.html.
[Accessed: 21-Dec-2019].
[8] F. Kurniawan, A. Kusyanti, and H.
Nurwarsito, “Analisis dan Implementasi
Algoritma SHA-1 dan SHA-3 pada Sistem
Autentikasi Garuda Training Cost,” J.
Pengemb. Teknol. Inf. dan Ilmu Komput., vol.
1, no. 9, pp. 803812, 2017.
[9] G. Bertoni, J. Daemen, M. Peeters, and G.
Van Assche, “Cryptographic sponges,”
Online] Http//Sponge. Noekeon. Org, 2011.
[10] A. Rahmatulloh, H. Sulastri, and R. Nugroho,
“Keamanan RESTful Web Service
Menggunakan JSON Web Token (JWT)
HMAC SHA-512,” J. Nas. Tek. Elektro dan
Teknol. Inf., vol. 7, no. 2, 2018, doi:
10.22146/jnteti.v7i2.417.
[11] K. Rizqiani, M. Ramdhani, A. Rizal, and D.
T. Elektro, “Perancangan Perangkat Lunak,”
pp. 16, 2009.
ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
Day to day information technology is constantly evolving, allowing a wide range of technologies, programming languages, and diverse architectures to keep popping up. It makes a new problem because at present all these differences must still be able to generate an interconnected information. It needs system integration. Currently, Web Service (WS) is a solution in system integration because it can be used without looking at the platform, architecture, or programming language used by different sources. But, on WS, the existing security is still considered less. Implementation of JSON Web Token (JWT) on WS is very influential in data security. JWT is an authentication mechanism on WS, but the application of standard JWT with HMAC SHA-256 algorithm is still not optimal. Therfore, this study discussed JWT security optimization with HMAC SHA-512 algorithm, which according to some researches, this algorithm will be better than SHA-256 if compiled on 64-bit architecture. The result of this research is that the use of SHA-512 produces a better time of 1% than SHA-256, but in SHA-512 token size is 2% larger than SHA-256.
MySQL -Integritas Data Dalam Basis Data
  • D Academy
D. Academy, "MySQL -Integritas Data Dalam Basis Data," Integritas Ref., no. Integritas Ref., p. 1, 2019.
Sistem Pengaman File dengan Menggunakan Metode RSA Kriptografi & Digital Signature
  • A Z Falani
  • M Zunaidy
A. Z. Falani and M. Zunaidy, "Sistem Pengaman File dengan Menggunakan Metode RSA Kriptografi & Digital Signature," 2013.
Penggunaan Fungsi Hash Satu-Arah untuk Enkripsi Data
  • B Maryanto
B. Maryanto, "Penggunaan Fungsi Hash Satu-Arah untuk Enkripsi Data," Media Inform., vol. 7, no. 3, pp. 1-10, 2008.
Studi Perbandingan Beberapa Fungsi Hash dalam Melakukan Checksum Berkas
  • M D Prihardhanto
M. D. Prihardhanto, "Studi Perbandingan Beberapa Fungsi Hash dalam Melakukan Checksum Berkas."
Apa itu Checksum (dan Mengapa Harus Anda Peduli)?
  • Id
  • Com
Id.if-koubou.com, "Apa itu Checksum (dan Mengapa Harus Anda Peduli)?" [Online].
Analisis dan Implementasi Algoritma SHA-1 dan SHA-3 pada Sistem Autentikasi Garuda Training Cost
  • F Kurniawan
  • A Kusyanti
  • H Nurwarsito
F. Kurniawan, A. Kusyanti, and H. Nurwarsito, "Analisis dan Implementasi Algoritma SHA-1 dan SHA-3 pada Sistem Autentikasi Garuda Training Cost," J.
Cryptographic sponges
  • G Bertoni
  • J Daemen
  • M Peeters
  • G Van Assche
G. Bertoni, J. Daemen, M. Peeters, and G. Van Assche, "Cryptographic sponges," Online] Http//Sponge. Noekeon. Org, 2011.
Perancangan Perangkat Lunak
  • K Rizqiani
  • M Ramdhani
  • A Rizal
  • D T Elektro
K. Rizqiani, M. Ramdhani, A. Rizal, and D. T. Elektro, "Perancangan Perangkat Lunak," pp. 1-6, 2009.
Pengertian File, Jenis-Jenis dan Fungsi File Pada Komputer
  • Maxmanroe
Maxmanroe, "Pengertian File, Jenis-Jenis dan Fungsi File Pada Komputer," Journal of Chemical Information and Modeling, 2019. [Online]. Available: https://www.maxmanroe.com/vid/teknologi/k omputer/pengertian-file.html. [Accessed: 21-Dec-2019].