小编the*_*ude的帖子

PHP中的简单加密

我正在构建一个带有源系统的系统,我在'网上提供可用于虚拟宠物的网络.该系统将主要由儿童拥有.因为我希望它可用于绝对的初学者程序员,所以我的系统有几个复杂性限制:它不能使用通常不附带PHP的库,也不能触及数据库或写入其他永久存储器.

当每只宠物被采用时,访客将随机获得该宠物的一系列略有不同的变体之一.变化最初看起来是一样的,但随着时间的推移长大成为不同的宠物.访问者将获得HTML的简短代码,该代码链接到他们宠物的图像.由于服务器端没有永久存储空间,因此用户的图像链接必须包含所有信息,以确定他们最终获得的宠物变体.

目前,URL只包含宠物的ID和用户获得的变体的ID.这样做的问题在于,通过将代码相互比较,用户可以确定其中的哪些人最终得到了相同的变体.由于某些变化比其他变化更少,因此用户可以在差异甚至在视觉上明显之前轻松发现罕见的变化.

我想要的是URL中的详细信息的加密系统.掩盖变体ID的东西,以便每个用户获得具有高概率的不同URL.我想过使用变量ID(3或4位)作为大随机数的低位或高位,但是用户会在其中发现模式.理想情况下,加密系统将进行参数化,以便我的系统的每个安装都使用稍微不同的加密.

PHP的mcrypt库可能会有一些有用的东西,但在主机中似乎并不常见.

我可以在这里使用简单的,参数化的混淆/加密吗?

php encryption

8
推荐指数
2
解决办法
2万
查看次数

为什么在 Three.js 中无法使用 arc() 绘制完整的圆?

我正在尝试使用挤压弧在 Three.js 中绘制一个复杂的形状,但它们似乎表现不正常。我不知道我是否不理解API,但这不应该创建一个以原点为中心、半径为100的完整挤压圆吗?

var path = new THREE.Path();

path.moveTo(0, 0);
path.arc(0, 0, 100, 0, Math.PI * 2, false);

var shape = path.toShapes(false, false);

var extrudeSettings = {
    amount : 20,
    steps : 1
};

var geometry = new THREE.ExtrudeGeometry(shape, extrudeSettings);

var mesh = new THREE.Mesh(geometry, material);
Run Code Online (Sandbox Code Playgroud)

相反,它绘制了一个吃豆人形状:

http://i.gyazo.com/0c3c1beb427ff2627b7b3d273a093ac4.png

这是 JSFiddle:

http://jsfiddle.net/c8shqzpn/

javascript three.js

4
推荐指数
1
解决办法
5300
查看次数

标签 统计

encryption ×1

javascript ×1

php ×1

three.js ×1