# 💳 Cardbingenerator - Stripe Auto Fill
[](https://github.com/yourusername/cardbingenerator-extension)
[](LICENSE)
[](https://developer.chrome.com/docs/extensions/)
一个功能强大的 Chrome 浏览器扩展,用于自动生成测试信用卡号并自动填充 Stripe 支付表单。支持 Luhn 算法验证、自定义地址管理和现代化暗黑主题界面。
[English](#english-version) | [中文](#中文版本)
---
## 中文版本
## ⚠️ 免责声明
**本工具仅用于测试和教育目的**
- 仅可用于开发/测试环境或演示支付表单
- 请勿在生产环境的支付系统中使用
- 请勿用于欺诈或任何非法活动
- 开发者对工具的滥用不承担任何责任
- 测试卡号无法在真实支付处理器上使用
## 🌟 核心特性
### 💳 智能卡号生成
- **Luhn 算法验证**:生成数学上有效的卡号
- **BIN 支持**:使用任意银行识别号码(BIN)模式
- **多卡种识别**:自动识别 Visa、Mastercard、Amex、Discover 等
- **智能生成**:包含有效的到期日期和 CVV 安全码
### 🚀 自动填充能力
- **智能字段检测**:自动查找并填充卡片字段
- **Shadow DOM 支持**:兼容现代 Web 组件
- **地址自动填充**:填充账单地址、城市、州、邮编
- **仿人类输入**:模拟自然的打字模式
- **框架兼容**:绕过 React/Vue 值设置器
### 🛠️ 高度定制化
- **自定义 BIN 历史**:保存并重用你喜欢的 BIN 模式
- **多地址管理**:管理自定义账单地址
- **姓名生成器**:内置身份池用于持卡人姓名
- **数据源选择**:在静态、手动或自动生成数据之间切换
### 🔒 隐私保护功能
- **数据清理**:深度清除 cookies、缓存和存储
- **反指纹追踪**:清除所有 Stripe 相关的浏览数据
- **隔离存储**:所有数据本地存储在浏览器中
## 📦 安装方法
### 从源码安装
1. **克隆仓库**
```bash
git clone https://github.com/yourusername/cardbingenerator.git
cd cardbingenerator
```
2. **在 Chrome 中加载扩展**
- 打开 Chrome 并访问 `chrome://extensions/`
- 启用"开发者模式"(右上角的开关)
- 点击"加载已解压的扩展程序"
- 选择项目文件夹
3. **固定扩展图标**
- 点击 Chrome 工具栏中的拼图图标
- 找到"cardbingenerator"并点击图钉图标
### 手动安装
1. 下载最新版本
2. 解压 ZIP 文件
3. 按照"从源码安装"中的步骤 2-3 操作
## 🚀 使用指南
### 基本使用
1. **打开扩展**
- 点击 Chrome 工具栏中的扩展图标
- 你会看到主界面,包含标签页:General、BIN List、Settings
2. **输入 BIN 模式**
- 在"BIN Template"字段中输入 BIN(例如:`552461`)
- 扩展会自动用 'x' 填充到 16 位
- 示例:`552461` 会变成 `552461xxxxxxxxxx`
3. **生成并填充**
- 导航到 Stripe 结账页面
- 点击"Fill Everything"按钮
- 扩展将自动:
- 生成有效的卡号
- 填充卡片详情(卡号、到期日、CVV)
- 填充账单地址信息
- 自动提交表单
### 高级功能
#### BIN 历史记录
- 点击 BIN 输入框旁边的 `+` 按钮保存到历史
- 点击任意已保存的 BIN 快速选择
- 点击 `×` 从历史中删除
#### 自定义地址
1. 进入 **Settings** → **Addresses** 标签
2. 填写地址表单字段
3. 点击"Add"保存
4. 在 Address Source 下拉菜单中选择"Manual (Custom)"
#### 设置配置
**卡号验证开关**
- 启用:生成通过 Luhn 算法验证的卡号
- 禁用:生成随机卡号(更快,较宽松)
**地址来源**
- **Static**:使用内置默认地址
- **Manual**:使用你自定义保存的地址
- **Auto**:生成随机地址(即将推出)
**姓名来源**
- 控制是使用内置姓名还是自定义条目
- 姓名从地址条目中提取
## 🎯 工作原理
### 卡号生成算法
扩展使用 **Luhn 算法**(模 10 校验和)生成有效卡号:
1. 接收你的 BIN 模式(例如:`552461xxxxxxxxxx`)
2. 为每个 `x` 填充随机数字
3. 计算最后一位的 Luhn 校验位
4. 验证整个卡号
```javascript
// 生成示例
BIN 输入: 552461xxxxxxxxxx
生成结果: 5524610123456789
验证状态: ✅ 通过 Luhn 验证
卡片类型: Mastercard
```
### 自动填充流程
1. **字段检测**:扫描页面查找卡片和地址字段
- 使用 CSS 选择器和 autocomplete 属性
- 穿透 Shadow DOM 边界
- 根据相关性为字段评分
2. **智能填充**:按最佳顺序填充字段
- 首先填充国家(可能会刷新表单结构)
- 使用模拟打字填充卡片详情
- 适当延迟填充地址字段
3. **事件触发**:触发适当的 DOM 事件
- 原生值设置器绕过框架锁定
- Input、change 和 blur 事件
- 焦点管理触发验证
## 🔧 技术细节
### 支持的 Stripe 版本
- Stripe Elements v3
- Stripe Checkout
- 自定义 Stripe 集成
### 浏览器兼容性
- Chrome 88+
- Edge 88+
- Brave(基于 Chromium)
- Opera(基于 Chromium)
### 使用的权限
| 权限 | 用途 |
|------------|---------|
| `storage` | 保存 BIN 历史和自定义地址 |
| `activeTab` | 与当前 Stripe 结账页面交互 |
| `tabs` | 查找和管理 Stripe 标签页 |
| `scripting` | 注入自动填充脚本 |
| `cookies` | 清除会话数据用于测试 |
| `browsingData` | 深度清除 Stripe 指纹数据 |
### 文件结构
```
cardbingenerator/
├── manifest.json # 扩展配置
├── background.js # Service Worker(卡号生成逻辑)
├── content.js # Content Script(自动填充逻辑)
├── popup.html # 扩展用户界面
├── popup.js # UI 逻辑和设置
├── styles.css # 扩展样式
├── icon16.png # 扩展图标(16x16)
├── icon48.png # 扩展图标(48x48)
├── icon128.png # 扩展图标(128x128)
└── README.md # 本文件
```
## 🎨 支持的卡片类型
扩展自动检测并生成以下卡片:
- ✅ Visa(以 4 开头)
- ✅ Mastercard(以 51-55 开头)
- ✅ American Express(以 34、37 开头)
- ✅ Discover(以 6011、65 开头)
- ✅ JCB(以 35 开头)
- ✅ Diners Club(以 30、36、38 开头)
- ✅ Maestro(以 50、56-58、6304、6390、67 开头)
- ✅ UnionPay(以 62 开头)
## 🐛 故障排除
### 扩展未填充表单
- **解决方案**:确保你在 Stripe 结账页面上
- 检查页面是否已完全加载
- 尝试刷新页面并再次点击"Fill Everything"
### 生成的卡号被拒绝
- **解决方案**:在设置中启用"Card Validation"
- 某些测试环境需要 Luhn 有效的卡号
- 如果一个 BIN 不起作用,尝试使用不同的 BIN
### 字段填充不正确
- **解决方案**:页面可能有自定义字段名称
- 尝试点击"Clear All Data"按钮并刷新
- 报告问题时请提供页面 URL
### 扩展图标未出现
- **解决方案**:检查扩展是否在 `chrome://extensions/` 中启用
- 尝试重新加载扩展
- 检查浏览器控制台是否有错误
## 🔐 安全说明
### 仅本地存储
- 所有数据存储在 Chrome 本地存储中
- 敏感数据不调用外部 API
- 无遥测或跟踪
### 数据清理
使用"Clear All Data"按钮清除:
- Cookies(包括 HttpOnly)
- LocalStorage 和 SessionStorage
- IndexedDB 数据库
- 缓存和 Service Workers
- Stripe 指纹数据
## 📚 资源链接
- [Stripe 测试文档](https://stripe.com/docs/testing)
- [Luhn 算法详解](https://zh.wikipedia.org/wiki/Luhn%E7%AE%97%E6%B3%95)
- [Chrome 扩展开发](https://developer.chrome.com/docs/extensions/)
## 🤝 贡献指南
欢迎贡献!请遵循以下指南:
1. Fork 仓库
2. 创建特性分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 打开 Pull Request
### 开发设置
```bash
# 克隆你的 fork
git clone https://github.com/yourusername/cardbingenerator.git
# 创建分支
git checkout -b my-feature
# 进行更改并在 Chrome 中测试
# 从 chrome://extensions 加载未打包的扩展
# 提交并推送
git add .
git commit -m "你的功能描述"
git push origin my-feature
```
## 📄 许可证
本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件
## ⚠️ 法律声明
本软件按"原样"提供,不提供任何形式的保证。作者和贡献者:
- 不支持欺诈活动
- 不鼓励绕过支付安全
- 对滥用不承担责任
- 建议仅在授权测试环境中使用
**使用风险和责任自负**
## 👨💻 作者
由 **Blackhat_bullet** 创建
- 📺 [YouTube 频道](https://www.youtube.com/@Blackhat_bullet)
- 💬 [Telegram 群组](https://t.me/+VJJt9csJoEUxZTA1)
- 📞 [临时短信服务](https://t.me/Tempotpsms_bot)
- 💳 [BIN 生成器网站](https://cardbingenerator.com/)
## 🙏 致谢
- Stripe 提供的优秀测试文档
- Chrome 扩展社区
- 所有贡献者和测试人员
---
记住:本工具仅用于测试目的。请始终尊重法律和你正在测试的平台的服务条款。
---
## English Version
## ⚠️ Disclaimer
**This tool is for TESTING and EDUCATIONAL purposes only.**
- Use only on development/test environments or demo payment forms
- Do NOT use on production payment systems
- Do NOT use for fraud or any illegal activities
- The developers assume NO responsibility for misuse of this tool
- Test cards will not work on real payment processors
## 🌟 Features
### 💳 Smart Card Generation
- **Luhn Algorithm Validation**: Generates mathematically valid card numbers
- **BIN Support**: Use any Bank Identification Number (BIN) pattern
- **Multiple Card Types**: Automatically detects Visa, Mastercard, Amex, Discover, etc.
- **Smart Generation**: Includes valid expiry dates and CVV codes
### 🚀 Auto-Fill Capabilities
- **Intelligent Field Detection**: Automatically finds and fills card fields
- **Shadow DOM Support**: Works with modern web components
- **Address Auto-Fill**: Fills billing address, city, state, ZIP code
- **Human-Like Input**: Simulates natural typing patterns
- **Framework Compatible**: Bypasses React/Vue value setters
### 🛠️ Customization
- **Custom BIN History**: Save and reuse your favorite BIN patterns
- **Multiple Addresses**: Manage custom billing addresses
- **Name Generator**: Built-in identity pool for cardholder names
- **Source Selection**: Choose between static, manual, or auto-generated data
### 🔒 Privacy Features
- **Data Clearing**: Deep clean cookies, cache, and storage
- **Anti-Fingerprinting**: Clear all Stripe-related browsing data
- **Isolated Storage**: All data stored locally in your browser
## 📦 Installation
### From Source
1. **Clone the repository**
```bash
git clone https://github.com/yourusername/cardbingenerator.git
cd cardbingenerator
```
2. **Load the extension in Chrome**
- Open Chrome and go to `chrome://extensions/`
- Enable "Developer mode" (toggle in top right)
- Click "Load unpacked"
- Select the project folder
3. **Pin the extension**
- Click the puzzle icon in Chrome toolbar
- Find "cardbingenerator" and click the pin icon
## 🚀 Usage
### Basic Usage
1. **Open the Extension**
- Click the extension icon in your Chrome toolbar
- You'll see the main interface with tabs: General, BIN List, Settings
2. **Enter a BIN Pattern**
- In the "BIN Template" field, enter a BIN (e.g., `552461`)
- The extension auto-fills with 'x' to create a 16-digit pattern
- Example: `552461` becomes `552461xxxxxxxxxx`
3. **Generate & Fill**
- Navigate to a Stripe checkout page
- Click "Fill Everything" button
- The extension will:
- Generate a valid card number
- Fill card details (number, expiry, CVV)
- Fill billing address information
### Advanced Features
#### BIN History
- Click the `+` button next to BIN input to save to history
- Click any saved BIN to quickly select it
- Click `×` to remove from history
#### Custom Addresses
1. Go to **Settings** → **Addresses** tab
2. Fill in the address form fields
3. Click "Add" to save
4. Select "Manual (Custom)" in the Address Source dropdown
#### Settings Configuration
**Card Validation Toggle**
- Enable: Generates cards that pass Luhn algorithm validation
- Disable: Generates random cards (faster, less strict)
**Address Source**
- **Static**: Use built-in default addresses
- **Manual**: Use your custom saved addresses
- **Auto**: Generate random addresses (coming soon)
**Name Source**
- Controls whether to use built-in names or custom entries
- Names are taken from the address entries
## 🎯 How It Works
### Card Number Generation
The extension uses the **Luhn Algorithm** (mod-10 checksum) to generate valid card numbers:
1. Takes your BIN pattern (e.g., `552461xxxxxxxxxx`)
2. Fills random digits for each `x`
3. Calculates the Luhn check digit for the last position
4. Validates the entire card number
```javascript
// Example generated card
BIN Input: 552461xxxxxxxxxx
Generated: 5524610123456789
Valid: ✅ Passes Luhn validation
Type: Mastercard
```
### Auto-Fill Process
1. **Field Detection**: Scans the page for card and address fields
- Uses CSS selectors and autocomplete attributes
- Penetrates Shadow DOM boundaries
- Scores fields by relevance
2. **Smart Filling**: Fills fields in optimal order
- Country first (may refresh form structure)
- Card details with simulated typing
- Address fields with proper delays
3. **Event Triggering**: Fires proper DOM events
- Native value setters bypass framework locks
- Input, change, and blur events
- Focus management for validation triggers
## 🎨 Supported Card Types
The extension automatically detects and generates cards for:
- ✅ Visa (starts with 4)
- ✅ Mastercard (starts with 51-55)
- ✅ American Express (starts with 34, 37)
- ✅ Discover (starts with 6011, 65)
- ✅ JCB (starts with 35)
- ✅ Diners Club (starts with 30, 36, 38)
- ✅ Maestro (starts with 50, 56-58, 6304, 6390, 67)
- ✅ UnionPay (starts with 62)
## 🐛 Troubleshooting
### Extension doesn't fill the form
- **Solution**: Make sure you're on a Stripe checkout page
- Check that the page has loaded completely
- Try refreshing the page and clicking "Fill Everything" again
### Generated cards are rejected
- **Solution**: Enable "Card Validation" in settings
- Some test environments require Luhn-valid cards
- Use a different BIN if one doesn't work
### Fields are filled incorrectly
- **Solution**: The page may have custom field names
- Try clicking the "Clear All Data" button and refresh
- Report the issue with the page URL
### Extension icon doesn't appear
- **Solution**: Check if extension is enabled in `chrome://extensions/`
- Try reloading the extension
- Check browser console for errors
## 🔐 Security Notes
### Local Storage Only
- All data stored locally in Chrome storage
- No external API calls for sensitive data
- No telemetry or tracking
### Data Clearing
Use the "Clear All Data" button to remove:
- Cookies (including HttpOnly)
- LocalStorage and SessionStorage
- IndexedDB databases
- Cache and Service Workers
- Stripe fingerprinting data
## 👨💻 Author
Created by **Blackhat_bullet**
- 📺 [YouTube Channel](https://www.youtube.com/@Blackhat_bullet)
- 💬 [Telegram Group](https://t.me/+VJJt9csJoEUxZTA1)
- 📞 [Temp SMS Service](https://t.me/Tempotpsms_bot)
- 💳 [BIN Generator Website](https://cardbingenerator.com/)
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## ⚠️ Legal Notice
This software is provided "as is" without warranty of any kind. The authors and contributors:
- Do NOT endorse fraudulent activities
- Do NOT encourage bypassing payment security
- Do NOT take responsibility for misuse
- Recommend using only in authorized test environments
**Use at your own risk and responsibility.**
---
Remember: This tool is for testing purposes only. Always respect the law and terms of service of the platforms you're testing on.