Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用WebClient保护C#和PHP之间的数据传输?_C#_Php_Webclient - Fatal编程技术网

如何使用WebClient保护C#和PHP之间的数据传输?

如何使用WebClient保护C#和PHP之间的数据传输?,c#,php,webclient,C#,Php,Webclient,我有一个C#程序(使用Unity3D),我正在使用它连接到服务器上的PHP页面。我担心黑客读取数据包,担心人们仅仅能够将post数据发送到php页面并获得响应。我如何锁定网站,以便只有我的应用程序才能使用它 这是我目前的C#函数 这是php页面的开始 <?php if (!isset($_POST['uid'])) { echo "ERROR: 100"; exit; } if (!is_numeric($_POST['uid'])) { echo "ERROR:

我有一个C#程序(使用Unity3D),我正在使用它连接到服务器上的PHP页面。我担心黑客读取数据包,担心人们仅仅能够将post数据发送到php页面并获得响应。我如何锁定网站,以便只有我的应用程序才能使用它

这是我目前的C#函数

这是php页面的开始

<?php
if (!isset($_POST['uid']))
{
    echo "ERROR: 100";
    exit;
}
if (!is_numeric($_POST['uid']))
{
    echo "ERROR: 200";
    exit;
}

if (!isset($_POST['leveldata']))
{
    echo "ERROR: 300";
    exit;
}
?>


https://
以实现数据包的传输层安全性,然后是(由攻击者)发送的实际数据的一些不可格式化UID/验证字符串。后者显然更难做到。根本不可能区分你的应用程序和可以反编译你的应用程序的攻击者。无论你选择何种方法来识别你的应用程序,你的应用程序的身份都可能被欺骗。防止数据包嗅探的最佳方法是使用SSL来保护传输。是的,如上所述使用SSL,但您也应该隐藏正在发送的数据,即不要使用
uid
,因为您的帖子的键值会使其乱七八糟,如果该值不存在,则您不会响应。
<?php
if (!isset($_POST['uid']))
{
    echo "ERROR: 100";
    exit;
}
if (!is_numeric($_POST['uid']))
{
    echo "ERROR: 200";
    exit;
}

if (!isset($_POST['leveldata']))
{
    echo "ERROR: 300";
    exit;
}
?>