Semua perisian mempunyai kecacatan, terutamanya dalam kod kompleks hari ini dengan beribu-ribu baris yang perlu dipetik begitu sahaja. Institut Jurutera Elektrik dan Elektronik (IEEE) menyedari dilema ini. Bermula pada tahun 2014, IEEE melancarkan inisiatif baru: Pusat Persatuan Komputer untuk Rahsia Reka Bentuk (CSD). Misi itu? Untuk memberi panduan mengenai mengenal pasti sistem perisian yang terdedah kepada kompromi, dan mereka bentuk dan membina sistem perisian dengan ciri-ciri keselamatan yang kukuh
Seseorang mungkin mengatakan yang telah dilakukan sebelum ini. Itu benar. Walau bagaimanapun, CSD berhasrat untuk mengambil pendekatan yang berbeza dengan memindahkan beberapa tumpuan dalam keselamatan daripada mencari bug untuk mengenal pasti kelemahan reka bentuk yang sama dengan harapan bahawa arkitek perisian boleh belajar dari satu sama lain.
Untuk mendapatkan maklumat seperti itu, CSD mencari bantuan veteran dalam bidang keselamatan perisian - lebih kurang mereka yang telah membuat kesilapan yang disebutkan di atas atau mempunyai tangan untuk membetulkannya. Setelah banyak perbincangan, kumpulan itu mengumpulkan pemikirannya dalam karya, "Mengelakkan Kekurangan Reka Bentuk Keamanan Perisian Top 10". IEEE menyebut bahawa banyak kelemahan yang membuat senarai telah terkenal selama beberapa dekad, tetapi terus menjadi masalah. Di sini kita akan melihat kelemahan tersebut - dan bagaimana untuk memperbaikinya.