很多池子泡了很久,同学拉着投就一起投了。内推免笔试。
英语测试
- 25min 阅读 江苏高考CD篇的长度 后面几道题都是6个题目,共25min,建议有选择做题,时间根本不够
- 25min 听力 难度和六级差不多,但自己控制听力时间,时间也不太够,我最后一篇直接瞎选了,难度尚可
- 建议:做测试之前一定要熟悉一下英语听力和阅读,刚上来根本不适应。毕竟除了看论文平时也用不到英语了(其实看论文也是翻译)
一面 电话面 30min
约好的一点半,一点我还在睡觉,电话来了,人都傻了。
- 先自我介绍
- 问我们这边java,你c++?我说语言都可以转吧
- 问项目
- 问项目细节,是否考虑xx因素之类的
- 先问https 我:https比http多一个tls层,在现有的http2.0的体系下,先做tcp三次握手,然后做tls握手,具体过程包括:client向server发送请求,发送对称密钥算法集,和随机值A;服务端恢复对称密钥集中的一个和随机值B,同时将自己的公钥和认证中心发的签名;客户端收到后用认证中心的公钥对签名解密,同时对服务端公钥哈希,对比后判断身份
- (面试官打断)如果服务器伪造自己身份哪? 我:认证中心发的签名是将服务端公钥哈希后用自己的私钥加密的,这样大家就可以用认证中心的公钥解密并比对,伪造的话因为没有认证中心的私钥,就没办法使用公钥解密了 。
- (面试官打断)签名是什么?我:对服务端公钥的哈希后用认证中心的私钥加密得到的128位值
- 面试官继续:那如果我这边是服务端,我伪造我的身份哪? 我:如果伪造了身份,因为没有认证中心的私钥所以没有正确的签名,客户端验证时就会失败。
- 面试官不理我继续:假如我是jd,我伪造了自己的身份,我重复
- 重复了3+次以上,面试官好吧,你回去再看看,你认为这样那就这样吧。
- 然后让我继续流程,我:客户端认证完身份后,用服务端的公钥发送对称密钥,后续两者就可以通过堆成密钥加密。
- 又问我对称密钥有哪些,我说不记得了
- 问非对称密钥有哪些 我说我看了百度https的证书,用的是 RSA(沉默了一分钟)
- (那继续吧)问java八股hashmap? 我:确定要问java的东西吗?面试官:我们这边是做java的,那行吧问点其他的。
- 问redis?我只了解redis是一个key-value数据库,AOF 和 RDB知道一点
- 面试官:那行吧(感觉在说你咋啥都不会),出道算法题
- 小于N的所有素数? 我线性筛法,刚解释,面试官 :好的我知道了
- 又转回项目,你们有个项目用socket,了解netty吗,我:不知道
- 那多路复用哪,我讲select、poll和epoll,然后讲他们的区别。
- 问我项目怎么没用,我说当时不了解这些,
- 然后问我如果使用这些应该怎么做?我:不会,只看过一些理论
- 那你们当时怎么做的? 我:connect默认阻塞,当时节点只有三个就没有考虑并发,因为只是demo
- 面试官:好的我懂了你有什么要问的。
- 我:很抱歉,我看后端招聘的要求是物联网相关的开发,所以我投递了(因为我是网络相关),这是我的问题,抱歉浪费你们的时间,再见。
反思
大概就是人和人的沟通真的很难吧,还有在投递的时候还是尽可能细化到具体部门。and我还是不懂面试官说的伪造到底是怎么出现的?不知道大佬们有没有什么看法。
全部评论
(8) 回帖