Giter Site home page Giter Site logo

kennbroorg / poorskeme Goto Github PK

View Code? Open in Web Editor NEW
34.0 1.0 4.0 9.33 MB

OSINT - Data Visualization - Blockchain - Awareness - Scam

Home Page: https://kennbroorg.gitlab.io/poorskeme-page/

Python 47.79% JavaScript 0.30% SCSS 13.04% TypeScript 16.62% HTML 22.24%
data-analysis data-visualization python scam smart-contracts visualization

poorskeme's Introduction


Logo

poorSKeme

OSINT - Data Visualization - Blockchain - Awareness - Scam

Principal

Install

Go to this site and click on the downdload button Or go to release section. Download the ZIP file called poorSKeme.zip

Unzip it, install requeriments and execute it.

unzip poorSKeme.zip
cd poorSKeme
pip install -r requirements.txt
python3 poorSKeme --help
$$$$$$$\                                       $$$$$$\  $$\   $$\
$$  __$$\                                     $$  __$$\ $$ | $$  |
$$ |  $$ | $$$$$$\   $$$$$$\   $$$$$$\        $$ /  \__|$$ |$$  / $$$$$$\  $$$$$$\$$$$\   $$$$$$\
$$$$$$$  |$$  __$$\ $$  __$$\ $$  __$$\       \$$$$$$\  $$$$$  / $$  __$$\ $$  _$$  _$$\ $$  __$$\
$$  ____/ $$ /  $$ |$$ /  $$ |$$ |  \__|       \____$$\ $$  $$<  $$$$$$$$ |$$ / $$ / $$ |$$$$$$$$ |
$$ |      $$ |  $$ |$$ |  $$ |$$ |            $$\   $$ |$$ |\$$\ $$   ____|$$ | $$ | $$ |$$   ____|
$$ |      \$$$$$$  |\$$$$$$  |$$ |            \$$$$$$  |$$ | \$$\\$$$$$$$\ $$ | $$ | $$ |\$$$$$$$\
\__|       \______/  \______/ \__|             \______/ \__|  \__|\_______|\__| \__| \__| \_______|

usage: poorSKeme.py [-h] [-bc {bsc,eth}] [-ct CONTRACT] [-bf BLOCK_FROM] [-bt BLOCK_TO] [-c CHUNK] [-f FILE] [-w]

Contract analyzer

optional arguments:
  -h, --help            show this help message and exit

Get and process data:
  -bc {bsc,eth}, --blockchain {bsc,eth}
                        Select Blockchain (bsc, eth)
  -ct CONTRACT, --contract CONTRACT
                        address of contract
  -bf BLOCK_FROM, --block-from BLOCK_FROM
                        Block start
  -bt BLOCK_TO, --block-to BLOCK_TO
                        Block end
  -c CHUNK, --chunk CHUNK
                        Chunks of blocks

Process data from JSON file:
  -f FILE, --file FILE  JSON file of recolected data

Start WebServer visualization data:
  -w, --web             WEB for data visaulization

            Examples
            --------

            # Extract TRXs of contract from block to block (Ethereum Network)
            python3 poorSKeme.py -bc eth -ct 0xb547027A4CCD46EC98199Fa88AAEDF5aA981Db26 -bt 6496413        # To collect

            # Extract TRXs of contract from block to block (Binance Smart Chain)
            python3 poorSKeme.py -bc bsc -ct 0xe878BccA052579C9061566Cec154B783Fc5b9fF1 -bt 15552901       # To collect

            # Data Visualization of processed contract information (Binance Smart Chain)
            python3 poorSKeme.py -bc bsc -f contract-0xe878BccA052579C9061566Cec154B783Fc5b9fF1.db -w  # To visualice data

If you use the web param, the port is 4200. The complete url is http://127.0.0.1:4200.

API

Get the Free API from https://etherscan.io/apis (Ethereum) and from https://bscscan.com/apis (Binance Smart Chain) Load them in the API.yaml file replacing the XXX by the corresponding APIKey

Example

Getting data

To collect data from contract 0xe878BccA052579C9061566Cec154B783Fc5b9fF1 (Ethereum is the blockchain default)

python3 poorSKeme.py -ct 0xb547027A4CCD46EC98199Fa88AAEDF5aA981Db26

But this could take too long, so you can pass by parameter the block from and block to

python3 poorSKeme.py -bc bsc -ct 0xe878BccA052579C9061566Cec154B783Fc5b9fF1 -bf 14040726 -bt 15552901

Or just block to

python3 poorSKeme.py -bc bsc -ct 0xe878BccA052579C9061566Cec154B783Fc5b9fF1 -bt 15552901

Note the -bc parameter which indicates the blockchain network (Binance Smart Chain in this case)

This will result in a file named contract-bsc-[CONTRACT].json, for our example it will be called contract-bsc-0xe878BccA052579C9061566Cec154B783Fc5b9fF1.json

Process data and visualization

After obtaining the data file you can process the information and visualize it by executing

python3 poorSKeme.py -f ./contract-bsc-0xe878BccA052579C9061566Cec154B783Fc5b9fF1.db -w

The above command will turn on two services, an internal API on port 5000 and the webi visualization on port 4200. Just open the browser and enter the address http://127.0.0.1:4200

Resume Detail Code Diagram

Distribution

Disclaimer

This is a young project, started in mid-March 2022, so it may contain errors. Over time, and with feedback, the project will grow and bugs will be fixed, but it is a personal project and the time dedicated to it is undetermined.

Disclaimer

This is a young project, started in mid-March 2022, so it may contain errors. Over time, and with feedback, the project will grow and bugs will be fixed, but it is a personal project and the time dedicated to it is undetermined.

Disclaimer

This is a young project, started in mid-March 2022, so it may contain errors. Over time, and with feedback, the project will grow and bugs will be fixed, but it is a personal project and the time dedicated to it is undetermined.

I posted the disclaimer three times, maybe you will read it even once

Simple Roadmap

  • Binance Blockchain support
  • Ethereum Blockchain support
  • Data collect
  • Visualization
  • Early detection of scams
  • Automatic anomaly detection

...

  • [?] Traceability
  • Wallet identification

These last two points of the roadmap are subject to a lot of research, but nothing is impossible.

poorskeme's People

Contributors

kennbro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

poorskeme's Issues

No hay fichero api

Tras seguir los pasos al ejecutar el poorSKeme indica que no hay el fichero para la API donde poder introducir la generada.
¿Tiene que seguir algun formato concreto o es un fichero con la clave directamente?

poorSKeme$ python3 poorSKeme.py --help
Traceback (most recent call last):
File "poorSKeme.py", line 534, in
with open(r'./API.yaml') as file:
FileNotFoundError: [Errno 2] No such file or directory: './API.yaml'

visulization error

Traceback (most recent call last):
  File "poorSKeme.py", line 649, in <module>
    rc = process_json(args.file)
  File "poorSKeme.py", line 255, in process_json
    raise("JSON File not found")
TypeError: exceptions must derive from BaseException

i am getting visualization error like above once the json file is saved

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.