Open TruongLuan1996 opened 6 years ago
thầy có thể giải thích rõ hơn được không ạ, nếu không tạo transaction thì làm sao đồng bộ dữ liệu với dữ liệu trên Kcoin được ạ ?
Tổng tiền do hệ thống bạn sở hữu luôn luôn >= tổng số tiền của tất người dùng. Khi chuyển tiền nội bộ là bạn trừ người này, cộng người kia thôi nên đâu có ảnh hưởng gì bên ngoài? Địa chỉ nhận tiền gắn với tài khoản người dùng CHỈ DÙNG ĐỂ NHẬN TIỀN người dùng không sỡ hữu nó, người dùng chỉ có số dư do bạn ghi trong hệ thống của bạn, nhưng họ có quyền chuyển ra ngoài, khi đó mới cần phải đồng bộ lên blockchain.
Em vẫn còn 1 chỗ chưa hiểu. Theo em biết việc chuyển tiền sẽ dựa vào referenceOutputsHashes. Vậy ví dụ như e có 50K trong địa chỉ A, chuyển 30K cho địa chỉ B và nhận tiền thối 20K vào địa chỉ A. Lúc này transaction chưa được xác nhận, nhưng e muốn chuyển 20K còn lại vào địa chỉ C thì referenceOutputsHashes sẽ là gì thầy?
Số dư của địa chỉ A = tổng tất cả các output chưa được sử dụng gửi đến A
Khi em tạo một transaction A gửi đi thì chỉ cần tìm đủ số lượng output là 30K hoặc hơn để chuyển đến B. Trường hợp bạn chỉ có 1 output 50K và gửi đi thì phải chuyển 30K => B và 20K => A và chờ ~10 phút sau, 20K sẽ thành 1 output mới (trong transaction được confirm), lúc đó mới được sử dụng.
Vậy là 1 tài khoản/ người dùng chỉ có 1 địa chỉ để nhận tiền, và gửi tiền cũng dùng địa chỉ đó, hay là 1 tài khoản có thể add nhiều địa chỉ, địa chỉ mặc định đầu tiên lúc đăng ký sẽ là địa chỉ để nhận tiền, và các địa chỉ còn lại sẽ được dùng để gửi tiền (và nhận tiền thối) hay là như thế nào vậy thầy?
Mỗi người dùng (trên hệ thống của bạn) chỉ có 1 địa chỉ để nhận tiền (mình đã làm rõ yêu cầu lại). Tiền thối bạn có thể nhận bằng chính địa chỉ đó. Còn gửi tiền đi hệ thống có thể dùng địa chỉ đó gửi hoặc quỹ hệ thống (2 cách), miễn sao tiền đến được đích.
Chào mọi người, mình có 2 vấn đề thắc mắc: