简体   繁体   中英

Distributed Random Number Generator

I am thinking about starting a project based around the idea of distributing the work and entropy of random number generation between a number of devices ranging from androids to computers; I want to gather entropy on the machines and send and receive packets of encrypted data to mix into the entropy pools. I want the program to run in the background if the program closes. I will have access to a web server to handle negotiation of connections from client to client.

My question is what sorts of things do I need to think about when creating such a system? My programming (and mathematics) knowledge is limited, what are the best areas I should spend energy brushing up on in order to create such a project?

First of all you need to decide which programming language you will use, as you say that need an distributed system it could be node.js, java or python, it depends on your programming skills. Once you've decided that, the next step is to think about your knowledge about the algorithm you think to implement, I mean go beyond the ideal case, what could be the implications, the considerations and write the cases you want to prove, in order to write a “map” which you can follow in order to achieve the desired goal.

When you have this in mind maybe you can decide if the architecture you think first is going to be necessary, maybe it could be resolved in an easiest way or maybe you must build a more complex system than you think at a glance.

Finally you must start to learning how to program in the language you choose, I recommend to you don't try to learn a lot of things at the same time it could be frustrating and conducts to demotivation, instead choose some topics you feel enough comfortable to which lets you build some small pieces of your software.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM