V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jsq2627  ›  全部回复第 85 页 / 共 103 页
回复总数  2049
1 ... 81  82  83  84  85  86  87  88  89  90 ... 103  
@ayanamist9 可能还得看人吧。

我学 Java 和 C# 主要就是看的官方文档。
https://docs.oracle.com/javase/tutorial/getStarted/index.html
https://docs.oracle.com/javase/tutorial/java/index.html
https://docs.oracle.com/javase/tutorial/essential/index.html
做完这几个教程,总共也就花了两个下午的时间。那学期学校的 Java 课几乎没去上,期末考试92。当然仅仅用考试成绩来衡量是不合适的。

Java 语言特性也算不上复杂(对比 C++),如果真正要在 Java 方面深入下去,大部分时间是花在类库上了。


语言这事,我觉得精通一门面向对象语言和一门函数式语言就够了,其它的语言都能轻松入门。有机会自己设计一门语言,实现个编译器做练习是最好的,这样 language specification 也能当教程看了。
2015-05-27 20:16:49 +08:00
回复了 publicID002 创建的主题 奇思妙想 完全重写 minecraft 1.8 难度有多大?
@KexyBiscuit 内部肯定是有重写的,MC 的代码烂,而且不是一般的烂,据说 OpenGL 相关的部分可能连一个初学者写的都不如。
其实没多少详细信息。。。后者是关闭显示详细信息的错误页面。
比较一下
https://msdn.microsoft.com/subscriptions/phoneapphub
https://stackia.me/haha
2015-05-27 19:50:25 +08:00
回复了 caesar 创建的主题 支付宝 目测支付宝已奔溃
@gamexg 现在是已经恢复了。
2015-05-27 19:40:08 +08:00
回复了 b821025551b 创建的主题 PHP 花好几个小时才解决掉了 emoji 不能显示的问题。
上面少打了几个字

应该是你手机客户端的 JSON 解析库没能正确处理 UTF-16 代理对。
2015-05-27 19:39:43 +08:00
回复了 b821025551b 创建的主题 PHP 花好几个小时才解决掉了 emoji 不能显示的问题。
应该是你手机客户端的 JSON 没能正确处理 UTF-16 代理对。
2015-05-27 19:24:40 +08:00
回复了 caesar 创建的主题 支付宝 目测支付宝已奔溃
几个小时都没解决问题。这灾备做的真不行啊。
2015-05-27 19:21:34 +08:00
回复了 caesar 创建的主题 支付宝 目测支付宝已奔溃
明明是全国大瘫痪呀,怎么说成一小部分用户了。
2015-05-27 19:12:48 +08:00
回复了 xxaiyy 创建的主题 美酒与美食 怎么才能解决午饭吃什么这个难题?
泥萌都是伪吃货,真正的吃货已经在一边吃汉堡一边刷 V2 了,比如我 (~ ̄(OO) ̄)ブ
2015-05-27 19:08:08 +08:00
回复了 zhuchaowe 创建的主题 iDev EasyIOS-Swift 版本发布, MVVM+HTML+LiveLoad 来开发 IOS
大爱 MVVM

有时间可以了解下微软的 WPF / Silverlight / WinRT。WPF 是 MVVM 的鼻祖,有很多可以借鉴的东西。
尤其是 Win10 SDK 引入的 Trigger 和 Action 模型(在 Win8 里可以用 Behavior SDK 库来支持),可以把很多原先要在 ViewModel 里写代码处理的逻辑,直接通过声明式语句写在 View 里。目前没见到哪个微软系之外的 MVVM 框架有实现这个。
@cvmax 补充一句。。。如果是新手学第一门编程语言,这话当我没说。。
https://docs.oracle.com/javase/tutorial/
https://docs.oracle.com/javase/tutorial/getStarted/index.html

一直觉得,不管什么语言,官方文档是最好的教程。
2015-05-27 18:07:10 +08:00
回复了 fxxkgw 创建的主题 DNS 关于校园网 DNS 解析问题求助
你这个“智能DNS”的描述不清楚啊
这到底是反向代理还是 DNS?
HTTP_X_FORWARDED_FOR 是反向代理才有的。
2015-05-27 15:37:00 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
@wy315700 哈哈哈客户真奇葩。
2015-05-27 15:30:33 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
@wy315700 那也不能怪 TLS 喽,明明是大家的使用姿势不正确~

不过我以前也干过这样的事,客户端配置 TLS 的时候不验证服务器证书,以为这样就能省张 SSL 证书的钱了~ 正确的省钱姿势是安装自己的根证书。
2015-05-27 15:24:25 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
@dallaslu 上面只讨论了攻击者没有取得代码的情况。遇到这种私有的复杂哈希函数的话,攻击者会想办法取得代码的。

我觉得正确的思路应该是 PBKDF2 那样,大大增加计算彩虹表的时间成本。即使有了代码也没法破解。
2015-05-27 15:18:41 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
client / server 之间的通信安全,TLS / HTTPS 算是实现起来成本最低,最安全的一种方式。
为了节省一张 SSL 证书的钱,各位也真拼。。。
2015-05-27 15:07:22 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
此外 HMAC 原本的设计就不是用于密码保存的,它是用于带身份验证的完整性校验的。HMAC 的输入应该是 hash 和 key,而不是 hash 和 salt。key 和 salt 的区别是 key 应该是保密的,由传送接受双方预共享,私下保存。salt 是存在数据库的,对攻击者是公开的。


https://news.ycombinator.com/item?id=1998198
这里有一个很好的解释
2015-05-27 15:02:53 +08:00
回复了 jookr 创建的主题 MySQL mysql 能否一句 sql 验证加盐的密码?
@wy315700
@zhicheng

用 HMAC 代替手写 hash+salt 算法并没有什么明显的安全优势。
用 PBKDF2 代替手写 hash+salt 算法是安全的。

这里举例说明:
假定攻击者已经取得了完整的数据库权限,但是没法看到代码实现。
攻击者想要获取用户 foo 的明文密码,下面分别讨论针对几种种密码存储方式攻击方式:

1. 密码明文存储
直接从数据库读出来,最不安全,大家都知道。

2. 不加盐 hash
攻击者知道 hash。但是不知道用什么哈希算法生成的 hash,可能是 md5(password),可能是 md5(sha1(password))。攻击者可以利用已知的彩虹表查出 hash 可能对应的明文,分别去尝试登录。如果不是复杂的哈希算法,都有对应的现成彩虹表可查。

3. HMAC
攻击者知道 hash 和 salt。接下来和 2 是类似的,只不过哈希算法在 2 的基础上套了一层 HMAC,变成了这样 hash = HMAC(originalHash, salt)。因为 salt 是随机的,需要自己针对这个 salt 生成彩虹表,没法利用现成的彩虹表。

4. 加盐 hash
攻击者知道 hash 和 salt。和 3 类似,区别就是,在 3 里 hash = HMAC(originalHash, salt),在这里 hash = myFunc(originalHash, salt),攻击者需要想办法知道 myFunc 是什么,这个在不看代码的情况下是很难推出的。

5. PBKDF2
攻击者知道 hash 和 salt。同上,这次换成 hash = PBKDF2(password, salt)。注意 PBKDF2 算法的第一个参数直接就是 password,不需要先计算 originalHash。与 3 相比,攻击者无需推算 originalHash 是怎么得出的,可以直接计算针对此 salt 的彩虹表。但关键的地方来了,PBKDF2 是一个非常慢的算法,这个算法内部会进行多次 HMAC 的迭代,如果指定的迭代次数足够大,通常计算一次哈希值需要 500ms 以上,这时计算足够大的彩虹表是非常困难的。

对上面各种方式的安全性从低到高来个排序,大概是这样:
1<2<3=4<5

3 的难点在于 HMAC 算法通常也不是很快,计算彩虹表成本较高,但是只要有足够时间和设备还是可以计算出来的。4 的难点在于没法知道 myFunc 是什么,攻击具有不确定性,但通常低水平开发者写出的 myFunc 很简单,比如 md5($originalHash . $salt) 这样,这是非常容易猜出来的。所以上面给 3 和 4 画了个等号,两种方式可比性不强,安全性相当。

PBKDF2 算法是可以指定迭代次数的,只要有需要,完全可以把每个哈希值的计算时间调到 10s 以上,大大增加了彩虹表的计算难度。
2015-05-27 12:45:59 +08:00
回复了 banxi1988 创建的主题 程序员 To: qinfensky 这正是我希望看到的
程序员就是呆萌,真有意思。

@qinfensky 建议你反思一下,码农这一行是否真的适合自己。学了这么久,还是这样的技术能力,换任何 leader 都看不过去的。只不过 LZ 这位 leader 的处理方式有些不妥罢了。毕竟你学习态度很好,也许换个行业会更有助于发展。
我认识的几个喜欢编程的初中生,看起来能力可能也比你强。IT 这一行,真的需要天赋。
1 ... 81  82  83  84  85  86  87  88  89  90 ... 103  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2756 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 46ms · UTC 12:12 · PVG 20:12 · LAX 04:12 · JFK 07:12
Developed with CodeLauncher
♥ Do have faith in what you're doing.