From a1e3d36dca9c6abf235c7ddf47ab9185c4b748d5 Mon Sep 17 00:00:00 2001 From: Stefan Suhren Date: Wed, 25 Mar 2015 10:15:50 +0100 Subject: First commit of IT-Sicherheit --- src/cipherssingleton.cpp | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/cipherssingleton.cpp (limited to 'src/cipherssingleton.cpp') diff --git a/src/cipherssingleton.cpp b/src/cipherssingleton.cpp new file mode 100644 index 0000000..89c66e8 --- /dev/null +++ b/src/cipherssingleton.cpp @@ -0,0 +1,53 @@ +#include "cipherssingleton.h" + + +//Create Singleton-instance +CiphersSingleton CiphersSingleton::instance; + + + +CiphersSingleton::CiphersSingleton() +{ + //Enter QStrings as Descriptions for symmetric Ciphers + m_symmetricCipherDescriptions.append( QString("NullCipher") ); + m_symmetricCipherDescriptions.append( QString("Caesar") ); + m_symmetricCipherDescriptions.append( QString("Cube") ); + m_symmetricCipherDescriptions.append( QString("AES") ); + + //Enter QStrings as Descriptions for asymmetric Ciphers + m_asymmetricCipherDescriptions.append( QString("RSA") ); + m_asymmetricCipherDescriptions.append( QString("ECC") ); +} + +QString CiphersSingleton::textFromValue(int value) +{ + if( value > m_symmetricCipherDescriptions.size()-1 ) + { + if( (value - m_symmetricCipherDescriptions.size()) > m_asymmetricCipherDescriptions.size()-1 ) + return QString("ERROR"); + else + return m_asymmetricCipherDescriptions[(value - m_symmetricCipherDescriptions.size())]; + } + + return m_symmetricCipherDescriptions[value]; +} + +int CiphersSingleton::valueFromText(const QString& text) +{ + //Search Symmetric Ciphers + for (int var = 0; var < m_symmetricCipherDescriptions.size(); var++) + { + if( m_symmetricCipherDescriptions[var] == text ) + return var; + } + + //Search Asymmetric Ciphers + for (int var = 0; var < m_asymmetricCipherDescriptions.size(); var++) + { + if( m_asymmetricCipherDescriptions[var] == text ) + return (var + m_symmetricCipherDescriptions.size()); + } + + //Nothing found + return -1; +} -- cgit v1.2.3-70-g09d2