Я работаю над проектом в Windows Phone 8 с серверной частью PHP, я зашифровал секретный код в PHP с помощью этого кода
<?php
if(!isset($_POST['op'])) {
?>
<form id="form1" name="form1" method="post" action="">
enter text
<input name="data" type="text" />
<input type="hidden" value="op" name="op" />
<input type="submit" name="Submit" value="Submit" />
</form>
<?php
}else {
$buffer = $_POST['data'];
// get the amount of bytes to pad
$extra = 8 - (strlen($buffer) % 8);
// add the zero padding
if($extra > 0) {
for($i = 0; $i < $extra; $i++) {
$buffer .= "\0";
}
}
// very simple ASCII key and IV
$key = "passwordDR0wSS@P6660juht";
$iv = "password";
// hex encode the return value
echo "Result: ".bin2hex(mcrypt_cbc(MCRYPT_3DES, $key, $buffer, MCRYPT_ENCRYPT, $iv));
}
?>
Этот код работает правильно. Теперь я хочу расшифровать этот секретный код в приложении Windows Phone, я нашел код для приложения Windows Form, но этот код не работает в приложении Windows Phone, он отображает ошибки DLL, код C #
using System;
using System.Security.Cryptography;
using System.Text;
using System.IO;
namespace TestBed {
class Program {
static void Main(string[] args) {
byte[] key = Encoding.ASCII.GetBytes("passwordDR0wSS@P6660juht");
byte[] iv = Encoding.ASCII.GetBytes("password");
byte[] data = Encoding.ASCII.GetBytes("Test");
byte[] enc = new byte[0];
TripleDES tdes = TripleDES.Create();
tdes.IV = iv;
tdes.Key = key;
tdes.Mode = CipherMode.CBC;
tdes.Padding = PaddingMode.Zeros;
ICryptoTransform ict = tdes.CreateEncryptor();
enc = ict.TransformFinalBlock(data, 0, data.Length);
Console.WriteLine(Bin2Hex(enc));
Console.ReadLine();
}
// my bin2hex implementation
static string Bin2Hex(byte[] bin) {
StringBuilder sb = new StringBuilder(bin.Length * 2);
foreach(byte b in bin) {
sb.Append(b.ToString("x").PadLeft(2, '0'));
}
return sb.ToString();
}
}
}
Любой, помогите мне, пожалуйста, расшифровать секретный код в приложении Windows Phone 8
Задача ещё не решена.
Других решений пока нет …