@小二 #9 https://2049bbs.xyz/t/4017
4楼的地址
用tor访问2049,cf会返回一个alt地址
但是用这个地址,无法访问2049
同样的道理,品葱也有这个地址,你能不能访问这个地址呢?
@小二 #9 https://2049bbs.xyz/t/4017
4楼的地址
用tor访问2049,cf会返回一个alt地址
但是用这个地址,无法访问2049
同样的道理,品葱也有这个地址,你能不能访问这个地址呢?
@小二 #7 品葱的onion地址是什么?你能不能上去?
反正2049的onion我上不去,我试过2049的地址
@小二 #11 我现在是手机,我没法测试。但是我发帖子的时候,是TOR,上不了。。。
@小二 #3
我在外面新员工培训,没法验证了。
看到这句话了。Onion Routing is now available to all Cloudflare customers, **enabled by default for Free and Pro plans. **
我其实提倡品葱的站长开启这个功能,然后,鼓励大家用onion网络访问品葱。
@小二 #13 我们之间肯定误会太多了。
6楼,我指的是品葱支持onion域名访问,不是指2049。所以
7楼你回复我,一直都是开启的,我理解为,品葱一直支持onion域名访问。所以在
8楼,回复了你能不能通过onion访问品葱,最后 你的13楼回复
我现在解释下
我没有说2049支持onion域名有什么用。但是,品葱有个帖子建议所有人用tor访问品葱。强制所有人访问品葱,最好的办法,就是只能onion域名访问!所以我给了6楼的建议,而且还是带删除线的。
最后,那两篇文章我都看了,这里只说第二篇,它说的enable 是指,你启用以后,会自动提供一个onion域名,让tor用户访问,你可以关闭,操作以后会关闭你的onion域名而已
@origin #1 感谢前辈,这个画风和剧情,不是很吸引我
1《Re:从零开始的异世界生活》 第二季
2、《我的青春恋爱物语果然有问题》第三季
3、《辉夜大小姐想让我告白》第二季
4、《新水果篮子》第二季
5、《刀剑神域 Alicization篇 Underworld》第二季
6、《食戟之灵》第五祭
7、《王者天下》 第三季
8、《爱书的下克上》第二季
9、《邪神与厨二病少女》第二季
10、《数码宝贝》新作动画
11、《富豪刑事》
12、《隐瞒之事》
13、《魔神英雄传渡 七魂的龙神丸》
14、《新樱花大战 the Animation》
15、《文豪与炼金术师》
16、《被束缚的芬尼尔》
17、《魔王学院的不适合者》
18、《啄木鸟侦探处》
19、《天晴烂漫!》(PA原创)
20、《放学后海堤日记》(动画工房)
21、《攻壳机动队:SAC_2045》
22、《球咏》
除了16,我感觉4月没有一个我看的。。。
现在才知道,品葱的熊熊,来自动画片<熊熊勇闯异世界>
@宁缺 #3 感觉没有伊藤润二的尺度大,富江系列,你能接受,达尔文游戏算什么
@solids #5 这个推荐,我会去看看!
其实,我期待的格斗,应该是龙珠超那种打来打去,看的过瘾。或者鬼灭之刃那种。
玩热兵器的,总感觉。。。
我在外面新员工培训。。。
没法测试。你能不能贴下你的tor日志。
点击选项,左侧有个tor
然后点击view tor log
大概是这么操作,我不记得了。。。
@ersic #29 你不错啊,学过诡辩术!偷换概念,是诡辩术的入门招式。
那么我来讲讲道理。
新疆和西藏这两个词是中国什么朝代开始称呼的?
新疆和西藏纳入所谓的中国版图,是什么朝代?
共产党中国,占领新疆和西藏是什么时候?
为什么新疆和西藏是自治区,而不是甘肃省,湖北省这样的行政单位?
欧盟,采用统一货币,拥有统一的经济主权。和美国联邦制,统一经济货币,但是各州可以司法独立,不是类似么?
欧盟属于一种联邦制,欧盟可以作为一种特殊的国家存在!就像资本主义也有君主立宪制(英国,日本),也用总统制(美国)
放弃了自己国家的货币主权,加入一个新主权共同体,广义上就是联邦制了。
你说,西藏某个市独立,用来递归的思想,是另一种诡辩术。
西藏基本都是藏民,人口也不多,他们独立的意义不大。
新疆倒是有可能,那里民族众多,多民族一起生活,可能出现你说的进一步独立现象。
这里,我觉得可以细说,不是一句话能说清楚的
@v2rayuser #6 因为doh很容易被GFW给sni rst掉。我觉得纯IP方式比域名方式安全。
比如DNS污染,doh的域名,导致doh去连的ip就错了
再比如改了hosts,通过sni rst掉doh的tls连接。
@natasha #17 你最好直接说你想做什么。如果是编程,我们说怎么编程。如果是统计,我们说怎么统计。
统计可以用MATLAB,SPSS,r语言,Python。。。
编程就是另外一个问题了
编程语言多,是一个很复杂的问题。别问,问就头痛
@笑翻江山 #4 可以上2049,其他的不知道了
@Phragmites #9
https://2049bbs.xyz/t/3776 18楼
@solids #2 域名方式容易被sni rst
这个分裂,我就觉得和英国脱欧一样。
没有讨论价值,最后公投就好了,少数服从多数。
比如英国脱欧不脱欧,应该是英国人自己公投,不是整个欧洲公投。
如果西藏,新疆要独立,那么让这两个地方的当地人公投就好了。
打开火狐,地址栏,输入about:config
点击确定
搜索trr.uri
修改为 https://替换为我提供的ip中任意一个/dns-query
我周末再写Python实现更方便的翻墙手段。。。
@小二 #4 doh+esni可以免翻墙直接访问2049
但是GFW把doh给封杀了。
所以我想提供一个免费的doh。
原本是觉得2049加个路由就好了。
现在想想, ** 也许 ** 不需要2049,就可以
下班我研究下
@小二 #13 我只会crud,用sql写期望,方差,标准差,概率分布,判定系数,置信区间,数据拟合,聚类,我就不知道sql怎么写了
natasha学的统计?如果不会统计,光学编程也没用啊。。。
@origin #7 也有道理,for语句不讲一下,没人知道for语句在干嘛。
不过我建议numpy和pandas看一遍就开始实战。
其实natasha就是统计和可视化,r和Python是最好的选择。。。
@小二 #10 我不知道natasha前辈想干嘛。
我先猜想她想的和Rebecca一样,爬了2049的数据做统计。那么还得写爬虫。
最后还不如Python写了爬虫,pandas分析。
如果数据集问题不需要考虑,那么就r studio直接干了
@小二 #2 Firefox的doh+esni可以直连2049,但是1.1.1.1被封了,我想改成2049来实现doh,想了想,没必要2049,可以直接pc端完成自己的doh
@小二 #4 的确是免翻墙安全登陆。
普通用户,允许Python脚本,就可以直接访问2049,限Firefox浏览器
@小二 #2 没有好处,1.1.1.1被封了,想给2049的用户提供一个doh服务器。
想了想,其实不需要2049,我自己写完Python就可以了。。。
到时候我提供下Python就好了脚本
其中客户端部分,我用flask框架,
开发完成,再补小白版本的操作文档
@natasha #3 前辈,我觉得你不是程序员。没必要hello world开始。那些语法开始的教程,在我眼里就像孔乙己的茴香豆。
你可以看看anaconda,入门真的很简单。
r studio或者jupyter,都是很容易的。操作界面就像MATLAB
如果前辈会MATLAB的话。直接MATLAB就可以完成你问题里的操作
Python可以看看numpy和pandas
大部分程序员只会crud,不会统计和可视化
r语言或者Python适合你
下载anaconda,然后跟着demo开始练习就好了
你想做什么,就GitHub上搜索,应该都有现成的。然后改改就好了
@我的2049 #8 立纱大神,现在不在。我来回答吧。传统的DNS是UDP明文。存在中间人攻击把txt里的公钥换成攻击者的,然后esni对攻击者来说就是明文了。所以,rfc规范里明确要求,不能使用传统DNS来实现esni。
等Lisa回答。。。
“人生就是一列开往坟墓的列车,路途上会有很多站,很难有人可以自始至终陪着走完。当陪着你的人要下车时,即使不舍也该心存感激,然后挥手道别。”
——周深在B站视频中摘的话,送给有缘人
@abc123 #12 6楼不是说被墙了么?我这里也连不上1.1.1.1
@Phragmites #1 你好,我有个问题。Lisa是被品葱的谁欺负了吗?我在树洞的帖子是这个感觉
https://blog.cloudflare.com/zh/encrypted-sni-zh/
我觉得讲的也很细,不过代码实现没讲。搜了下,的确没人讲解火狐esni代码实现的文章
lisa大神,我明天入职报到,估计来不及看了
等我看完了,告诉你
@立紗Lisa #2 lisa大神,可以说的细一些么?好抽象啊,我不懂
第一个问题,说是中间人攻击,能不能解释下怎么攻击?第二个问题,主动嗅探是怎么工作的,原理说下?
@立紗Lisa #16 谢谢lisa大神的夸奖!!!
onion域名的官方文档规范V3
https://gitweb.torproject.org/torspec.git/tree/rend-spec-v3.txt
tor的资料很少有中文的,我都是在tor的wiki上自己大概翻译了一下
好像也没有翻译多少,更多是告诉大家,哪些是重点,没必要一行行去读了
@2read #11 谢谢,我在研究.onion的工作机制和相关代码实现而已,不需要自己发布一个网站
参考资料:https://trac.torproject.org/projects/tor/wiki/doc/meek
meek网桥协议规范
大致原理讲下,通过CDN来隐藏自己的真实IP,用CDN来转发我的代理请求。在外界看来,就是普通的https浏览网页。
重点看下Amazon CloudFront 这个章节,根据这个章节配置服务端
ClientTransportPlugin meek exec ./meek-client --url=https://d111111abcdef8.cloudfront.net/ --front=d36cz9buwru1tt.cloudfront.net --log meek-client.log
记得最后要执行这样的一句话!!!并把生成的meek 网桥信息,填入客户端,看 How to change the front domain 这个章节,客户端需要修改网桥为自定义网桥!!!
参考资料:https://github.com/Yawning/obfs4/blob/master/doc/obfs4-spec.txt
obfs4网桥协议规范
重点看第四节和第五节,分别是握手阶段和传输阶段,整个过程类似TLS1.3协议,我不再啰嗦了
大致过程讲下,
客户端和服务端通过curve25519椭圆曲线算法,计算PSK得到对称密钥secretInput,
通过HKDF 算法计算secretInput, 得到对称加密的密钥 记作sec_key,
数据传输阶段,使用了secretbox加密,使用密钥 sec_key
只需要看代码 https://github.com/Yawning/obfs4/blob/master/transports/obfs4/obfs4.go 就可以了
从 newObfs4ClientConn函数看起,clientHandshake函数会发起握手
hs.generateHandshake()生成握手请求,发送给服务端
服务端收到请求hs.parseClientHandshake得到PSK 也就是seed
okm := ntor.Kdf(seed, framing.KeyLength*2) 根据seed 计算HKDF,作为对称加密的密钥
返回severhello,客户端解析n, seed, err := hs.parseServerHandshake(conn.receiveBuffer.Bytes()) 得到相同的seed,并和上面一样计算HKDF,作为对称加密的密钥
以上就是onion地址如何工作的
参考资料:https://tor.stackexchange.com/questions/672/how-do-onion-addresses-exactly-work
1.服务器通过ed25519算法得到一对密钥【非对称加密算法】
2.服务器随机选取n个tor节点作为介绍点
3.服务器通过TOR回路,告诉这些节点自己的公钥【介绍点没法知道服务器地址】
4.服务器把自己的公钥和这些介绍点打包成一个匿名服务描述符
5.服务器用自己的私钥签名这个描述符
6.服务器上传描述符到目录服务器【DHT】
7.客户端,从其他途径知道了具体的onion地址
8.客户端发送请求给DHT
9.如果这个hash存在,返回服务器的公钥和介绍点IP
10.客户端随机选择一个tor节点作为会和点,并告诉这个汇合点一次性密钥。
11.客户端创建一个介绍信,包含汇合点的地址 和一次性密钥并用服务器的公钥加密
12.客户端通过TOR回路,发给介绍点,并要求它转发给服务器【介绍点不能知道客户端地址,会和点IP】
13.服务器收到介绍信,用自己的私钥解密,知道会和点地址和一次性密钥。
14.服务器通过TOR回路,发送一次性密钥给会合点【汇合点即不知道客户端IP,也不知道服务器IP】
15.汇合点告诉客户端,连接完成
16.客户端和服务端可以互相通信了【一共6跳,服务器和客户端互相不知道对方的IP】
思考题:如果介绍点都挂了,不在线怎么办?
如果服务器重启的话,介绍点是不是就找不到服务器地址,需要重新生成.onion了?
说了这么多,干脆把TOR代码讲一遍好了。。。
入口函数叫tor_run_main,在
C:\Users\张怀义\tor-alpha-3.04.1\src\app\main\main.c
C:\Users\张怀义\tor-alpha-3.04.1\src\app\main\subsystem_list.c 遍历这文件里所有的子系统,调用子系统的initialize函数和add_pubsub函数。和linux内核的子系统类似,使用了订阅发布模式,golang用的是CSP模型,这里是actor模型!
我假设你们学过actor模型,现在只看mainloop_event_new和mainloop_event_postloop_new相关代码!
列个提纲:
TOR如何去连目录服务器?
TOR如何建立环路?环路三要素【守卫节点】【中间节点】【出口节点】
【可选】网桥是什么?meek,obfs4等
onion站点,DNS处理逻辑
自己喜欢的讲解内容方向
1.TOR 启动监听端口9150 等【HS服务会启动其他端口】
2.TOR的监听端口accept以后,通知readable,调用了read handle函数
3.TOR的read以后,去调用对应的write handle
4.把得到的数据,按link返回
5.如果涉及到了onion域名,如何访问的呢?
说了这么多,干脆把TOR代码讲一遍好了。。。
入口函数叫tor_run_main,在
C:\Users\张怀义\tor-alpha-3.04.1\src\app\main\main.c
C:\Users\张怀义\tor-alpha-3.04.1\src\app\main\subsystem_list.c 遍历这文件里所有的子系统,调用子系统的initialize函数和add_pubsub函数。和linux内核的子系统类似,使用了订阅发布模式,golang用的是CSP模型,这里是actor模型!
我假设你们学过actor模型,现在只看mainloop_event_new和mainloop_event_postloop_new相关代码!
ed25519_keypair_generate生成了公钥和私钥的密钥对
然后调用tor_cert_create传入刚才的公钥,得到证书
TOR作者是真心大神中的大神啊,全能型天才啊
先用ed25519_secret_key_generate产生了私钥
再用ed25519_public_key_generate产生了公钥
有两个实现impl_donna 或者 impl_ref10
不管是哪个实现,我们只看ed25519_ref10_seckey_expand和ed25519_ref10_pubkey
或者ed25519_donna_seckey_expand和ed25519_donna_pubkey
我自己的理解,TOR的onion只需要做数字签名,不分发公钥,因为不需要交换AES密钥!
所以在修改torrc的时候,增加一个User 你的用户名,就可以在windows下创建onion域名了
到此,win10下,建立onion站点是可行的!
被打脸了,不是缺少openssl造成的。。。
而且从代码看,使用的是椭圆曲线算法,而不是我以为的RSA算法
意外收获是这里居然还有DoS防御等相关代码,我继续研究下为什么win10无法创建onion
第三步,根据第二步,我们知道了配置项有哪些。现在开始看服务具体做什么。
C:\Users\张怀义\tor-alpha-3.04.1\src\feature\hs\hs_service.c
hs_service_init 会new一个smartlist
service_free_all会free刚才的smartlist
hs_service_load_all_keys 加载或生成key
我感觉我就是卡在上面这个函数
hs_check_service_private_dir 创建目录并修改权限???Windows下这段代码是不是有问题,因为用户权限
ed_key_init_from_file 这个应该会生成公钥和私钥,但是看源码,不是用的openssl,而是自己实现了!
hs_build_address 会生成我们的onion地址
write_address_to_file 最后写到网上说的两个文件,一个是公钥和私钥文件,一个是hostname文件
load_client_keys载入代码,完成服务注册,注册服务代码是register_service
hs_service_map_has_changed通知服务map发生了变化
第二步,我开始看源码!为什么看源码?因为不看源码,我不知道缺什么东西!!!
C:\Users\张怀义\tor-alpha-3.04.1\src\feature\hs\hs_config.c
如果是版本2,看函数rend_config_service
如果是版本3,看函数config_service_v3
一头黑线。。。
默认是什么版本啊?算了,我强制用配置项设置为版本3吧,怎么想都是版本3更好一些