Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Growing primitive blockchain life - group 13 #3240

Closed
MohamedLEGH opened this issue Nov 21, 2017 · 37 comments
Closed

Growing primitive blockchain life - group 13 #3240

MohamedLEGH opened this issue Nov 21, 2017 · 37 comments

Comments

@MohamedLEGH
Copy link

MohamedLEGH commented Nov 21, 2017

Create a Bitcoin-based entity which can earn money, mutate, multiply, and dies. Very crude starting point which needs decades of further work in order to be considered 'really' living. This projects builds upon existing code creating crude Bitcoin Life.

You will create an Internet-deployed system which can earn money, replicate itself, and which has no human control. In the past humanity has created chess programs that it can no longer beat. The distant future of an omniscient computer system that on day chooses to exterminate humanity in the Terminator films is the not focus of your project. You will create software that is beyond human control and includes breathtaking features such as earning money (Bitcoin) and self-replicating code (software buys a server+spawn clone). Earning money consists of helping others become anonymous using the Tor-like protocols developed at TUDelft and our own cybercurrency designed for this purpose, called Trustchain coins. You Python software is able to accomplish some parts of the following functionality:

Earn income in a form of cybercurrency (existing code)
Sell this cybercurrency on a market for Bitcoins
Buy a server using Bitcoins fully automatically (see our PyPi scripts)
Login to this Linux server and install itself from the Github repository
The software also should be able to have a simplistic form of genetic evolution. Key parameters will be inherited to offspring and altered with a mutation probability. For instance, what software version of yourself to use (latest release?), what type of server to prefer buying (quad core, 4GB mem, etc), and if you offer Tor exit node services for income. Bitcoins owned by TUDelft will be used to bootstrap your research.

@devos50
Copy link
Contributor

devos50 commented Nov 21, 2017

Group members:

@MohamedLEGH
@mikvrax
@mr-spd
@Ka-Wing
@pblank12

@devos50 devos50 self-assigned this Nov 21, 2017
@devos50 devos50 changed the title Growing primitive blockchain life - project groupe 13 Growing primitive blockchain life - project group 13 Nov 21, 2017
@mr-spd
Copy link

mr-spd commented Nov 21, 2017

TODO week 1:

  • Read everything
  • Case specify everything
  • Go through the code and run it
  • Install PyCharm
  • Fork Github project
  • Try using bitcoins (find where to buy bitcoin servers and get receipts)
  • Look into testing code for quality assurance

@MohamedLEGH
Copy link
Author

Repository of the project : https://github.com/MohamedLEGH/BlockchainLife

@synctext
Copy link
Member

synctext commented Nov 28, 2017

Big boost:

  • Buy VPN from a VPS using a Bitcoin wallet 🥇
  • check https://pypi.python.org/pypi/cloudomate/0.1.3 still operational
  • PyCharm project or docker image of all parts
  • Enable other groups to continue
  • Documentation of all existing work

@MohamedLEGH
Copy link
Author

MohamedLEGH commented Nov 28, 2017

TODO week 2 :

  • Everybody : understand and run the code. Check with the other group about cloudomate with python3.

  • Mohamed Amine and Ka-Wing : Create the Docker image. Can we use docker image for the agent child installation on the server ?

  • Dinesh : Find how to buy a VPN in bitcoin.

  • Michael and Philip : understand how the Tribler API works.

@synctext synctext changed the title Growing primitive blockchain life - project group 13 Growing primitive blockchain life - group 13 Nov 28, 2017
@devos50
Copy link
Contributor

devos50 commented Dec 5, 2017

@MohamedLEGH
Copy link
Author

Today we will work to implement the VPN part in cloudomate : parse vpn form and send email to tell that the vpn form works. We have choose a VPN provider : ExpressVPN. The Bitpay API has been checked by Phillip and Dinesh.

TODO LIST :

  • Look at testnet and buy bitcoins: Mohamed

  • Make the python script for VPN parsing : Dinesh and Phillip

  • Extract email data : Michael

  • Test cloudomate from the other group : Ka-Wing

@Ka-Wing
Copy link

Ka-Wing commented Dec 12, 2017

TODO week 5:

Main goal:
Create demo for VPN buying, maybe a video. (@Ka-Wing and @mr-spd)
Issue #4 - Issue #5

Additional possible goals:
Integration test for IP change after VPN buying
Support Ethereum, check for wallets supporting Ethereum (@Ka-Wing)
Amazon Mechanical Turk for CAPTCHA solving (@mikvrax)

Else:
Decide what we will show in the end

@devos50
Copy link
Contributor

devos50 commented Dec 15, 2017

Please remember that your meeting next week Tuesday (11:00) will be with Johan 👍

@synctext
Copy link
Member

ai. another group is already scheduled then. Will be a late afternoon appointment Tuesday.

@mr-spd
Copy link

mr-spd commented Dec 18, 2017

Any indication what time the meeting will be?

@synctext
Copy link
Member

lets make it 16:30

@synctext
Copy link
Member

synctext commented Dec 19, 2017

Warning, not making big progress. Ideas for features:

  • VPN+VPS
  • Ethereum buying
  • Ethereum/other coin tasks for captcha solvers
  • Key parameters will be inherited to offspring and altered with a mutation probability.
  • inheritance transaction to one or multiple children
  • scheduling of buying
  • CloudOmate integration

@MohamedLEGH
Copy link
Author

  • Our agent now has the possiblity to make payments with it newly implemented Ethereum wallet !
    test

@Ka-Wing
Copy link

Ka-Wing commented Jan 9, 2018

Over 90% progress of scraping https://vpn.ac.

vpnac

@pblank12
Copy link

pblank12 commented Jan 9, 2018

TEAM#13: SOLVED! : Captchas are no longer an issue.
captchaimage

Our Agent can now solve image captchas in a timely and efficient matter.

@mr-spd
Copy link

mr-spd commented Jan 9, 2018

  • Mullvad VPN implemented. Can buy (with bitcoins) and install VPN.

@mikvrax
Copy link

mikvrax commented Jan 9, 2018

Cloudomate Crowncloud VPS + Mullvad VPN working properly together

cloudomate

@pblank12
Copy link

pblank12 commented Jan 9, 2018

Group#13: Google's ReCaptcha Solved!!
recaptcha

Agent now has the possibility to solve google ReCaptchas in a timely and efficient matter.

@MohamedLEGH
Copy link
Author

Next meeetup is Tuesday 16/01 at 11 am.

Todo List :

  • integrate mullvad (Dinesh and Phillip)

  • integrate captcha solver (human solver API) and make a pull request (Dinesh and Phillip)

  • finish Ethereum VPN integration (Ka-wing)

  • upgrade Ethereum wallet (make a demo of it for next meetup) and make a pull request (Mohamed)

  • Begin Ethereum VPS (Mohamed and Ka-wing)

  • finish fully automated Plebnet and Cloudomate - bitcoin mode - with VPS/VPN together (Michael)

@synctext
Copy link
Member

For Stanford exposure I need input for slides on 23Jan at the latest. As discussed, contact the other team #3238 to plan upcoming features, sync of very similar efforts, and merge your team work into their Plebnet repo. Especially your operational ReCaptcha needs to be first communicated to them ASAP. PlebNet needs to be updated by 25Jan at the latest. Happy hacking!
@devos50 If possible move that entire repo to github.com/Tribler + control of pypi.python.org updates

@devos50
Copy link
Contributor

devos50 commented Jan 16, 2018

Next meeting: Tuesday 23 January, 17:00. Please don't forget to post your progress + TODO list for this week on the ticket.

@MohamedLEGH
Copy link
Author

MohamedLEGH commented Jan 16, 2018

Progress right now :

Mullvad bitcoin VPN works

captcha solver (human solver API) works

Ethereum Wallet works, need private key and link to an ethereum node provider

We need to do some slides, title : autonomous blockchain mining using a botnet ?

We need to discuss with the other group because they are going to upgrade their code
need to do pull request for ethereum wallet and captcha solver (Michael in charge for pull requests)

If we have time : IRC communication ( a mail if something appends)

Next meeting at 5pm, 23 of January

TODO LIST for next week:

  • Add Ethereum VPS (Kawing and Mohamed)

  • finish end to end integration of coinpayments (Dinesh and Phillip)

  • units tests and template into cloudomate (Michael)

  • documentation and report (everyone)

@pblank12
Copy link

test_capctha

@pblank12
Copy link

test_googlerecaptcha

@pblank12
Copy link

testmullvadvpn

@synctext
Copy link
Member

An animated .gif with cmdline captcha in 16:9 aspect ratio would be great! Deadline tomorrow evening,Amsterdam time zone.

@mikvrax
Copy link

mikvrax commented Jan 24, 2018

MullVad VPN cloudomate integration
mullvad

@MohamedLEGH
Copy link
Author

Next meeting (the last one) : 30 January, 11h30 am

Find a date for the presentation (Doodle)

  • gifs are done
  • pull request for captcha solver is done, waiting for merge (or request for improvement)

TODO :

  • Make the pull requests (3 requests : captcha solver, we have also ethereum wallet and mullvad) with documentation (Mikael)

    • compatible with python2 and 3
    • squash commits
  • End to end integration of coinpayments with emails ( Phillip and Mohamed)

  • vpn.ac installation and integration (Phillip)

  • ExpressVPN installation and integration (Dinesh)

  • Upgrading Ethereum wallet (Mohamed and Kawing)

    • infura scraping
    • private key generator
  • Reload the captcha automatically (if we have time)

  • The final report (everyone)

By the way , I will go back to France the 2 of February, can I do the presentation by Skype ? or can we do the presentation before the 2 of February ?

@mr-spd
Copy link

mr-spd commented Jan 24, 2018

@synctext Would this work for your presentation? I cropped them to 16:9.

captcha_cmd

recaptcha_cmd

@synctext
Copy link
Member

Nice stuff. How does the 2nd Google .gif one work? You can see the road stuff being clicked by a human or not? Then it goes cmdline.

@devos50
Copy link
Contributor

devos50 commented Jan 25, 2018

Cloudomate 1.0 has been released, thanks for your contributions! https://pypi.python.org/pypi/cloudomate

@pblank12
Copy link

pblank12 commented Jan 25, 2018

@synctext :
The second gif is called a google ReCaptcha puzzle. The road stuff being clicked at the beginning of the gif is just to show an example of what exactly is being solved by the command line.
(So only command line is actually seen, beginning is just for clarity of what kind of captcha is being solved in command-line)

@pblank12
Copy link

pblank12 commented Jan 25, 2018

A bit more in depth explanation : The normal process is as follows: when someone is done clicking all the roads (and solved it correctly), a hash is computed , which you can either submit manually (depending on the website using the recaptcha) by clicking a button or it is automatically submitted (trough for example javascript) -> when someone is done solving the ReCaptcha the solution is translated to a hash string; usually called "g-recaptcha-response" : the "thing" that is being submitted is exactly this hash (a string of symbols and characters) that is considered the solution of the google recaptcha.
The command line example solves a recaptcha on a test website (once again the beginning of the gif was just as an example of what the script will be bypassing) and then returns the "g-recaptcha-response"/hash solution, at which point, this can be used and submitted by your web-scraping application; enabling you to bypass the recaptcha puzzle(because you are submitting the correct response).
There are some variations of these kinds of captcha but this is typically the most used next to the normal image captcha.

@pblank12
Copy link

pblank12 commented Feb 2, 2018

TorguardVPN Fully implemented
torguard-logo

@synctext
Copy link
Member

synctext commented Feb 5, 2018

Quick feedback on the final presentation:

  • Headless Selenium
  • captcha wrapper
  • no end-to-end demo (stacktraces and failed URL requests)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

7 participants