aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorManjeet Dahiya <manjeetdahiya@gmail.com>2010-10-07 17:35:39 +0000
committerManjeet Dahiya <manjeetdahiya@gmail.com>2010-10-07 17:35:39 +0000
commit7f645ab15a50b48bb13fb600bcd65ebff5d0a376 (patch)
tree5766d24cbc7cdf5e78b460006e193e9c76482f79 /examples
parenta9d8b914aacf88492fa66766edb0b31479146d0e (diff)
downloadqxmpp-7f645ab15a50b48bb13fb600bcd65ebff5d0a376.tar.gz
XOR encryption
Diffstat (limited to 'examples')
-rw-r--r--examples/GuiClient/utils.cpp15
-rw-r--r--examples/GuiClient/utils.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/examples/GuiClient/utils.cpp b/examples/GuiClient/utils.cpp
index 9b115d6d..98c02da6 100644
--- a/examples/GuiClient/utils.cpp
+++ b/examples/GuiClient/utils.cpp
@@ -155,3 +155,18 @@ bool isValidBareJid(const QString& bareJid)
QRegExp re("^[^@]+@[^@]+$");
return re.exactMatch(bareJid);
}
+
+QByteArray calculateXor(const QByteArray& data, const QByteArray& key)
+{
+ if(key.isEmpty())
+ return data;
+
+ QByteArray result;
+ for(int i = 0 , j = 0; i < data.length(); ++i , ++j)
+ {
+ if(j == key.length())
+ j = 0;
+ result.append(data.at(i) ^ key.at(j));
+ }
+ return result;
+}
diff --git a/examples/GuiClient/utils.h b/examples/GuiClient/utils.h
index 1b64d0eb..ff6c8178 100644
--- a/examples/GuiClient/utils.h
+++ b/examples/GuiClient/utils.h
@@ -44,4 +44,6 @@ QString getImageType1(const QByteArray& image);
bool isValidBareJid(const QString& bareJid);
+QByteArray calculateXor(const QByteArray& data, const QByteArray& key);
+
#endif // CLIENTUTILS_H