Давайте посмотрим, быстрое сравнение:
SQLite:
встроенный Firebird:
встроенный MySQL:
, Даже встроенные базы данных имеют свои достоинства и недостатки. Необходимо будет взвесить те достоинства и недостатки против того, что Вы делаете для решения.
.NET имеет классов , которые реализуют спецификацию цифровой подписи XML . Подпись может быть добавлена в исходный XML-документ (т.е. «подпись в конверте») или сохранена / передана отдельно.
Это может быть немного излишним, поскольку вам не нужна безопасность, но у нее есть то преимущество, что она уже реализован и является стандартом, не зависящим от языка или платформы.
Вы можете использовать пространство имен криптографии:
System.Security.Cryptography.MACTripleDES hash = new System.Security.Cryptography.MACTripleDES(Encoding.Default.GetBytes("mykey"));
string hashString = Convert.ToBase64String(hash.ComputeHash(Encoding.Default.GetBytes(myXMLString)));
Вам просто нужно использовать ключ для создания хеширующего криптографа, а затем создать хэш со строковым представлением вашего xml.