För att kunna garantera säkerheten i företagets produkter implementerar 256bit Security AB alla krypteringsrutiner själv och underhåller ett eget kryptobibliotek. Det gör att säkerheten inte baseras på andras arbete utan all kod som används följer samma modell för utveckling och ligger under samma versionshantering.

Att implementera egen kryptering är svårt av minst två orsaker: (1) det finns en matematisk komplexitet i kryptografiska algoritmer och man måste till viss del förstå den underliggande matematiken, och (2) det finns inga självrättande egenskaper i krypteringsalgoritmer. En algoritm kan kryptera och dekryptera information helt utan fel men ändå innehålla allvarliga sårbarheter som gör att krypteringen inte är säker. Det är därför viktigt att man vet vad som kan gå fel och hur man gör för att säkerställa att detta inte sker. Men, har man den här kunskapen kan krypto implementeras med mycket hög tillförlitlighet.

Det finns ingen nationell svensk eller europeisk standard för hur implementerat krypto ska utvärderas, utan det som finns att utgå från är den amerikanska metodiken CAVS/CAVP som underhålls av NIST. Metodiken ligger till grund för validering enligt FIPS-140 som används av amerikanska myndigheter (för hemlig information).

Det kryptobibliotek som 256bit Security AB använder har utvärderats med metoder hämtade från CAVS som främst är conformance-tester av de kryptografiska primitiverna. Testerna inkluderar bland annat testkedjor där slutresultatet efter hundra tusentals iterationer av algoritmerna jämförs mot det förväntade resultatet. Dessa tester garanterar primitivernas funktioner så nära det går att komma mot 100% conformance. Vilket betyder att algoritmen är identisk mot den standard som ska följas.

Kryptobiblioteket har också testats med formella funktionella tester, formella iterativa tester, dynaniska tester och fuzzing. Implementationen följer diverse allmänna vägledningar för implementation av krypto, ex PKCS #1, FIPS PUB-186-3, FIPS PUB-197, FIPS PUB-180-4, RFC 2104, osv.

Sammantaget gör det här att implementationerna är vältestade och håller en hög nivå av säkerhet.

 

Merparten av källkoden för kryptobiblioteket är öppen information och alla som vill kan själv granska koden:

källkod_krypto_2018-03-31.zip

Koden används i samtliga av företagets produkter.