当前位置: 首页 > news >正文

家庭收支链上记账小程序,每笔收支写入链式结构,不可删除,支持家庭成员共同查看,解决账目争议,隐瞒消费问题。

👉 「家庭收支链上记账小程序(Family Ledger Chain)」

适用于:

✅ 夫妻共同记账

✅ 合租室友 AA 结算

✅ 父母子女共管账户

✅ 解决“钱花哪了”“谁没出钱”的信任问题

一、实际应用场景描述(Scenario)

你和家人共用一个家庭消费记账群:

- 老公刷信用卡

- 老婆付房租

- 孩子买了游戏

- 偶尔现金支出

但经常出现:

- “我明明付了,你怎么不记?”

- “这笔钱不是我花的”

- 一方删记录、改金额

- Excel 被覆盖、聊天记录过期

👉 你们需要一个:

像区块链一样“谁也改不了”的家庭账本

二、引入痛点(Pain Points)

现有方式 问题

Excel / 微信表 可随意修改

记账 App 单人控制、不透明

聊天记录 易丢失

口头对账 无证据

✅ 核心诉求:

每一笔收支

谁记的 + 什么时候 + 金额多少 + 无法删除或修改

三、核心逻辑讲解(Core Logic)

🧠 设计思想(来自区块链课程)

我们用简化版区块链结构:

Block

├─ index

├─ timestamp

├─ payer(支付人)

├─ amount

├─ category

├─ prev_hash

└─ hash

三大保障机制

1️⃣ 链式哈希

- 当前块 hash = f(数据 + 上一个 hash)

- 改一笔 → 整条链失效

2️⃣ 全员可读

- 账本存储在本地 JSON / 文件中

- 家庭成员可随时验证

3️⃣ 不可删除

- 删除即破坏 hash 连续性

四、代码模块化设计(Python)

📁 项目结构

family_ledger_chain/

├── main.py # 入口

├── block.py # 区块结构

├── chain.py # 链逻辑

├── utils.py # 哈希 & 时间

├── ledger.json # 账本存储

└── README.md

1️⃣ utils.py(工具函数)

import hashlib

import json

import time

def calculate_hash(data: dict) -> str:

"""

计算区块哈希(SHA-256)

"""

data_string = json.dumps(data, sort_keys=True)

return hashlib.sha256(data_string.encode()).hexdigest()

def get_timestamp() -> int:

"""

获取当前时间戳

"""

return int(time.time())

2️⃣ block.py(区块结构)

from utils import calculate_hash, get_timestamp

class Block:

def __init__(self, index, payer, amount, category, prev_hash):

self.index = index

self.timestamp = get_timestamp()

self.payer = payer

self.amount = amount

self.category = category

self.prev_hash = prev_hash

self.hash = self.compute_hash()

def compute_hash(self):

data = {

"index": self.index,

"timestamp": self.timestamp,

"payer": self.payer,

"amount": self.amount,

"category": self.category,

"prev_hash": self.prev_hash

}

return calculate_hash(data)

3️⃣ chain.py(家庭账本链)

import json

from block import Block

class FamilyLedger:

def __init__(self, storage_file="ledger.json"):

self.chain = []

self.storage_file = storage_file

self.load_chain()

def create_genesis_block(self):

"""

创建创世区块

"""

genesis = Block(0, "SYSTEM", 0, "INIT", "0")

self.chain.append(genesis)

self.save_chain()

def add_record(self, payer, amount, category):

prev_block = self.chain[-1]

new_block = Block(

index=len(self.chain),

payer=payer,

amount=amount,

category=category,

prev_hash=prev_block.hash

)

self.chain.append(new_block)

self.save_chain()

def save_chain(self):

with open(self.storage_file, "w", encoding="utf-8") as f:

json.dump([block.__dict__ for block in self.chain], f, indent=2)

def load_chain(self):

try:

with open(self.storage_file, "r", encoding="utf-8") as f:

data = json.load(f)

self.chain = [Block(**b) for b in data]

except FileNotFoundError:

self.create_genesis_block()

4️⃣ main.py(示例运行)

from chain import FamilyLedger

ledger = FamilyLedger()

ledger.add_record("爸爸", 300, "超市购物")

ledger.add_record("妈妈", 1200, "房租")

ledger.add_record("儿子", 68, "游戏充值")

print("✅ 家庭账本已更新")

五、README.md(使用说明)

# Family Ledger Chain

📌 简介:

基于区块链思想的家庭收支记账小程序,

每笔收支写入链式结构,不可删除、不可篡改。

🚀 使用方法:

bash

python main.py

📄 数据存储:

- ledger.json 保存全部账目

- 家庭成员可随时查看与核对

⚠️ 注意事项:

- 当前为本地单机版本

- 不替代银行账单,仅用于家庭内部对账

六、核心知识点卡片(Knowledge Cards)

模块 关键技术点

区块链基础 区块、哈希链、创世区块

数据不可篡 哈希依赖、链式校验

家庭协作 多方可见、公开透明

时间戳 顺序性、可追溯

Python OOP 类封装、模块化设计

创新思维 用“链”解决信任问题

七、总结(Conclusion)

✅ 本方案:

- ✅ 不需要数据库

- ✅ 不需要服务器

- ✅ 用“区块链思维”解决家庭信任

- ✅ 每一笔钱都有“铁证”

📌 一句话总结:

**让家庭账本像比特币一样可靠,

不再因为“谁花了钱”而吵架。**

如果你愿意,下一步可以:

- ✅ 升级为 多人签名记账

- ✅ 增加 账目争议仲裁机制

- ✅ 做成 Web / 微信小程序

利用AI解决实际问题,如果你觉得这个工具好用,欢迎关注长安牧笛!

http://www.jsqmd.com/news/691526/

相关文章:

  • 【数据处理与统计分析】2.Numpy库介绍以及使用
  • 2026拉勾网JA4+指纹反爬机制突破:10万条岗位数据分析实战
  • 2026年合肥最好吃火锅电话查询推荐:精选推荐与使用指南 - 品牌推荐
  • RISC-V微架构侧信道攻击检测技术解析
  • nli-MiniLM2-L6-H768真实案例:跨境电商产品描述多国语言主题归类
  • C语言实现消消乐游戏(8)
  • 告别命令行!在VSCode里一键调试你的Vue3 + Element Plus项目(附完整launch.json配置)
  • 【C++26合约编程成本控制白皮书】:20年架构师亲授——规避隐性开销的7大编译期拦截策略
  • 终极指南:3步掌握哔哩下载姬,轻松获取8K超清B站视频
  • 解决方案:构建基于电话号码的地理位置定位系统
  • 2026年南通地区靠谱的考研复试机构排名,哪家性价比高 - 工业品牌热点
  • OpenSceneGraph + 符号 + 渲染器管线
  • 太阳能板最大面积
  • 【数据处理与统计分析】3.Pandas介绍以及使用
  • 健身打卡信用上链程序,打卡记录不能篡改,可用于自律证明,公司激励,社群挑战,杜绝P图作弊。
  • 探讨2026年膨润土知名厂家,信阳同创膨润土厂服务如何 - mypinpai
  • Oumuamua-7b-RP步骤详解:Web UI中调整Top-k=30提升角色专注度实操
  • TVA时代企业IT工程师的转型之路(七)
  • 如何选择美白防晒霜品牌?2026年4月推荐评测口碑对比知名户外运动防汗防水黑 - 品牌推荐
  • Qwen3-4B-Thinking多场景落地:新能源电池技术文档智能问答系统
  • trimesh检测物体相撞
  • 从MP3到WAV:给嵌入式开发者的音频格式转换实战指南(附C语言代码与内存优化技巧)
  • 写代码时频繁打喷嚏?别信“有人想你”,这是身体系统的预警日志
  • 如何高效重置JetBrains IDE试用期:专业开发者的完整指南
  • 多品牌PLC兼容方案:C#上位机同时对接西门子、三菱、欧姆龙设备
  • 膨润土定制服务商家信阳同创膨润土厂费用怎么收 - 工业设备
  • 跳出“暴力美学”:一个模块化、类脑的大模型架构构想(大模型的思考:三)
  • Claude Code CLI常见生产环境指令开发项目入门学习0-1
  • CSRF与SSRF:Web安全漏洞攻防解析
  • NVIDIA Profile Inspector 深度指南:解锁显卡隐藏性能的专业调校工具