Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
project_bias — 基于Ada/SPARK的高性能无偏差密码引擎,利用原生操作系统熵池。 | Kitploit
工具/GitHubGitHub/eliavila10/project_bias
加密/解密工具密码学实用工具与框架
GitHubeliavila10/project_bias

project_bias

基于Ada/SPARK的高性能无偏差密码引擎,利用原生操作系统熵池。

查看仓库
241个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

project_bias

一个用 Ada 编写并经 SPARK 正式验证的高性能、无偏倚加密流引擎。 该引擎通过丢弃模偏倚(modulo bias)值,将原始熵映射到自定义字母表时保证零统计偏倚, 并直接从原生操作系统内核池获取安全字节。

验证级别

  • SPARK Level 4(正式验证): 完全证明不存在运行时错误(AoRTE),并满足功能契约。
  • 工具链兼容性: 已使用 GNAT/SPARK Pro 2021 以及通过 Alire 获取的最新社区 SPARK 工具链进行验证。

核心架构与熵池

该引擎通过 Interfaces.C 直接对接底层操作系统 API,以消除抽象层与延迟:

  • ProcessPrng(主要): 使用现代用户态操作系统熵提供程序(ProcessPrng)作为原始安全字节的主要来源。
  • BCryptGenRandom(备用): 使用 Windows CNG API(bcrypt.dll)实现稳健的二级备用层。

截断的数学界限

root@kitploit:~
-- Formula applied to enforce uniform distribution without modulo bias:
-- Formul = Charset'Length * (256 / Charset'Length) - 1
-- Any extracted byte > Formula'result = it is ruled out

经验验证(完整的 1 TB 审计日志)

为验证无偏倚映射算法的数学均匀性, 该引擎接受了压力测试,从 69 字符字母表生成了 1,010,762,506,054 个字符(超过 1 TB)。

以下是由分析器套件于 2026-08-06 生成的完整原始验证日志:

root@kitploit:~
=========================================================================================================================================================================================
=== = = = = = = = = = = = = = = = = = = = = = = = = = = = = Date : 2026-08-06| Day : Thursday | Hour : 05:27 AM = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ===
=========================================================================================================================================================================================

Charset                    => 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#%_*- 
Charset'Length             => 69

--- Character Frequency [ Total Chars 1010762506054 ] ---

Character => '0' Appear   => 14649023982 times
Character => '1' Appear   => 14648736386 times
Character => '2' Appear   => 14648696512 times
Character => '3' Appear   => 14648653062 times
Character => '4' Appear   => 14648843467 times
Character => '5' Appear   => 14648860346 times
Character => '6' Appear   => 14648673812 times
Character => '7' Appear   => 14648829622 times
Character => '8' Appear   => 14648564528 times
Character => '9' Appear   => 14648559744 times
Character => 'A' Appear   => 14648686958 times
Character => 'B' Appear   => 14648868103 times
Character => 'C' Appear   => 14648717763 times
Character => 'D' Appear   => 14648704036 times
Character => 'E' Appear   => 14648711001 times
Character => 'F' Appear   => 14648733166 times
Character => 'G' Appear   => 14648527493 times
Character => 'H' Appear   => 14648868334 times
Character => 'I' Appear   => 14648851708 times
Character => 'J' Appear   => 14648737136 times
Character => 'K' Appear   => 14648711054 times
Character => 'L' Appear   => 14648833717 times
Character => 'M' Appear   => 14648761212 times
Character => 'N' Appear   => 14648842295 times
Character => 'O' Appear   => 14648607563 times
Character => 'P' Appear   => 14648743969 times
Character => 'Q' Appear   => 14648701143 times
Character => 'R' Appear   => 14648617680 times
Character => 'S' Appear   => 14648675946 times
Character => 'T' Appear   => 14648679521 times
Character => 'U' Appear   => 14648377186 times
Character => 'V' Appear   => 14648803564 times
Character => 'W' Appear   => 14648826843 times
Character => 'X' Appear   => 14648814157 times
Character => 'Y' Appear   => 14648745507 times
Character => 'Z' Appear   => 14648797929 times
Character => 'a' Appear   => 14648855410 times
Character => 'b' Appear   => 14648660410 times
Character => 'c' Appear   => 14648704634 times
Character => 'd' Appear   => 14648752856 times
Character => 'e' Appear   => 14648570222 times
Character => 'f' Appear   => 14649012159 times
Character => 'g' Appear   => 14648541356 times
Character => 'h' Appear   => 14648683165 times
Character => 'i' Appear   => 14648788877 times
Character => 'j' Appear   => 14648773938 times
Character => 'k' Appear   => 14648796827 times
Character => 'l' Appear   => 14648580917 times
Character => 'm' Appear   => 14648806120 times
Character => 'n' Appear   => 14648548612 times
Character => 'o' Appear   => 14648765478 times
Character => 'p' Appear   => 14648801238 times
Character => 'q' Appear   => 14648873563 times
Character => 'r' Appear   => 14648752656 times
Character => 's' Appear   => 14648578407 times
Character => 't' Appear   => 14648875270 times
Character => 'u' Appear   => 14648683708 times
Character => 'v' Appear   => 14648869846 times
Character => 'w' Appear   => 14648816676 times
Character => 'x' Appear   => 14648601253 times
Character => 'y' Appear   => 14648776500 times
Character => 'z' Appear   => 14648684743 times
Character => '!' Appear   => 14648535737 times
Character => '@' Appear   => 14648510145 times
Character => '#' Appear   => 14648629803 times
Character => '%' Appear   => 14649098064 times
Character => '_' Appear   => 14648723722 times
Character => '*' Appear   => 14648785828 times
Character => '-' Appear   => 14648781469 times

-------------------------------------------------------------------------------------------

Max Repeats               => Character '0' => 14649023982 times
Min Repeats               => Character 'U' => 14648377186 times

Divergence Variance Delta => 646796 units.
Theoretical Ideal Average => 14648731971.80

Real Standard Deviation   => 122205.17
Percet Deviation          => 0.00 %

Real Time Duration        => 7780.991359500
Process MB/s              => 123.88MB/s

Free Unbiased Range       => 0 .. 206
Unused Bytes              => 49
Reject Percent            => 19.14 %
Free Unbiased Formula     => Charset'Length * (256 / Charset'Length) - 1

Entropy Source            => ProcessPrng (Principal) - BcryptGenRandom (Secondary)
Entropy Default           => ProcessPrng
Entropy Fallback          => BcryptGenRandom

-------------------------------------------------------------------------------------------

Distribution Stability    => 100.00 % (Optimal Objective > 99.50%)
Audit Verdict             => [ PERFECT ] -> Uniformity matches military-grade physical noise.

-------------------------------------------------------------------------------------------

结构

  • src/ProcessPrng_Wrapper.ad[s|b]:主要现代 Windows 内核 PRNG 的绑定。
  • src/BcryptGenRandom_Wrapper.ad[s|b]:备用加密回退绑定。
  • src/Chain_Generator.ad[s|b]:编排无偏倚提取的主状态机。
  • src/Math_Functions.ad[s|b]:映射操作的正式前置/后置条件。

构建与运行

root@kitploit:~
alr run
下载工具