Pinned Repositories
aes
A pure Python implementation of AES
api-v1-client-python
Blockchain Bitcoin Developer APIs - Python
awesome-gpt3
awesome-graph-explainability-papers
Papers about explainability of GNNs
bert_language_understanding
Pre-training of Deep Bidirectional Transformers for Language Understanding: pre-train TextCNN
bitcoin-abe
Abe: block browser for Bitcoin and similar currencies
bitcoinbook
Mastering Bitcoin 2nd Edition - Programming the Open Blockchain
CryptoChallenge
密码算法和密码破译挑战题
DSA
MD4-Collision
MD4 Collisions MD4 is a 128-bit cryptographic hash function, meaning it should take a work factor of roughly 2^64 to find collisions. It turns out we can do much better. The paper "Cryptanalysis of the Hash Functions MD4 and RIPEMD" by Wang et al details a cryptanalytic attack that lets us find collisions in 2^8 or less. Given a message block M, Wang outlines a strategy for finding a sister message block M', differing only in a few bits, that will collide with it. Just so long as a short set of conditions holds true for M. What sort of conditions? Simple bitwise equalities within the intermediate hash function state, e.g. a[1][6] = b[0][6]. This should be read as: "the sixth bit (zero-indexed) of a[1] (i.e. the first update to 'a') should equal the sixth bit of b[0] (i.e. the initial value of 'b')". It turns out that a lot of these conditions are trivial to enforce. To see why, take a look at the first (of three) rounds in the MD4 compression function. In this round, we iterate over each word in the message block sequentially and mix it into the state. So we can make sure all our first-round conditions hold by doing this: # calculate the new value for a[1] in the normal fashion a[1] = (a[0] + f(b[0], c[0], d[0]) + m[0]).lrot(3) # correct the erroneous bit a[1] ^= ((a[1][6] ^ b[0][6]) << 6) # use algebra to correct the first message block m[0] = a[1].rrot(3) - a[0] - f(b[0], c[0], d[0]) Simply ensuring all the first round conditions puts us well within the range to generate collisions, but we can do better by correcting some additional conditions in the second round. This is a bit trickier, as we need to take care not to stomp on any of the first-round conditions. Once you've adequately massaged M, you can simply generate M' by flipping a few bits and test for a collision. A collision is not guaranteed as we didn't ensure every condition. But hopefully we got enough that we can find a suitable (M, M') pair without too much effort. Implement Wang's attack.
HMY626's Repositories
HMY626/ad_examples
A collection of anomaly detection methods (iid/point-based, graph and time series) including active learning for anomaly detection/discovery, bayesian rule-mining, description for diversity/explanation/interpretability. Analysis of incorporating label feedback with ensemble and tree-based detectors. Includes adversarial attacks with Graph Convolutional Network.
HMY626/AI-Surveys
整理AI相关领域的一些综述
HMY626/amazon-sagemaker-examples
Example notebooks that show how to apply machine learning, deep learning and reinforcement learning in Amazon SageMaker
HMY626/auto-sklearn
Automated Machine Learning with scikit-learn
HMY626/awesome-fraud-detection-papers
A curated list of data mining papers about fraud detection.
HMY626/awesome-graph-classification
A collection of important graph embedding, classification and representation learning papers with implementations.
HMY626/awesome-TS-anomaly-detection
List of tools & datasets for anomaly detection on time-series data.
HMY626/BILIBILI-HELPER
利用GitHub Action定时任务实现B站,哔哩哔哩(Bilibili)每日自动投币,签到,银瓜子兑换硬币,领取大会员福利,大会员月底给自己充电等。每天轻松获取65经验值。赶快和我一起成为Lv6吧!
HMY626/bitcoinmixing
HMY626/CARE-GNN
Code for CIKM 2020 paper Enhancing Graph Neural Network-based Fraud Detectors against Camouflaged Fraudsters
HMY626/cnn-explainer
Learning Convolutional Neural Networks with Interactive Visualization.
HMY626/coder2gwy
互联网首份程序员考公指南,由3位已经进入体制内的前大厂程序员联合献上。
HMY626/deep-finance
Datasets, papers and books on AI & Finance.
HMY626/DeepCTR-Torch
【PyTorch】Easy-to-use,Modular and Extendible package of deep-learning based CTR models.
HMY626/fastNLP
fastNLP: A Modularized and Extensible NLP Framework. Currently still in incubation.
HMY626/FATE
An Industrial Grade Federated Learning Framework
HMY626/featuretools
An open source python library for automated feature engineering
HMY626/graph-attribution
Codebase for Evaluating Attribution for Graph Neural Networks.
HMY626/GraphLIME
This is a Pytorch implementation of GraphLIME
HMY626/jeecg-boot
基于代码生成器的低代码平台,超越传统商业平台!前后端分离架构:SpringBoot 2.x,SpringCloud Alibaba,Ant Design&Vue,Mybatis-plus,Shiro,JWT。强大的代码生成器让前后端代码一键生成,无需写任何代码! 引领新开发模式(OnlineCoding-> 代码生成-> 手工MERGE),帮助Java项目解决70%重复工作,让开发更关注业务逻辑,既能快速提高开发效率,帮助公司节省成本,同时又不失灵活性。
HMY626/leetcode
LeetCode Solutions: A Record of My Problem Solving Journey.( leetcode题解,记录自己的leetcode解题之路。)
HMY626/leetcode-1
Python & JAVA Solutions for Leetcode
HMY626/matplotlib
matplotlib: plotting with Python
HMY626/mnmlUI
A date and clock collection
HMY626/pyHGT
Code for "Heterogeneous Graph Transformer" (WWW'20), which is based on pytorch_geometric
HMY626/pyod
A Python Toolbox for Scalable Outlier Detection (Anomaly Detection)
HMY626/PyTables
A Python package to manage extremely large amounts of data
HMY626/Server
PanDownload的个人维护版本
HMY626/skope-rules
machine learning with logical rules in Python
HMY626/tpu
Reference models and tools for Cloud TPUs.