Reference client for Bitmessage: a P2P encrypted decentralised communication protocol:

Overview

PyBitmessage

Bitmessage is a P2P communication protocol used to send encrypted messages to another person or to many subscribers. It is decentralized and trustless, meaning that you need-not inherently trust any entities like root certificate authorities. It uses strong authentication, which means that the sender of a message cannot be spoofed. BM aims to hide metadata from passive eavesdroppers like those ongoing warrantless wiretapping programs. Hence the sender and receiver of Bitmessages stay anonymous.

Development

Bitmessage is a collaborative project. You are welcome to submit pull requests although if you plan to put a non-trivial amount of work into coding new features, it is recommended that you first describe your ideas in the separate issue.

Feel welcome to join chan "bitmessage", BM-2cWy7cvHoq3f1rYMerRJp8PT653jjSuEdY

References

Issues
  • Transport Layer Security

    Transport Layer Security

    Currently peer-to-peer communication occurs over insecure sockets. Wrapping these sockets in SSL is done via ssl.wrap_socket, the resulting object has most of the same methods as a standard socket.

    Each peer could generate and self-sign a certificate and be configured to accept any certificate that it is presented. (We don't really care who we're connecting to as long as its over a secure channel, for now)

    enhancement 
    opened by r14c 59
  • python uses 100% CPU

    python uses 100% CPU

    On my Xubuntu 12.10 with xfce-desktop sometimes (not always) pyBitmessage causes a python process that uses 100% of one complete CPU:

    #ps aux|grep bitmes
    

    ruben     2703 88.3  1.7 1870944 70304 ?       Sl   20:44  19:14 python bitmessagemain.py
    

    If I close the GUI, that process stays and continues to waste the CPU

    only

    #kill -kill 2703
    

    stops bitmessage and releases the CPU

    opened by rubo77 40
  • setup.py is package manager incompatible

    setup.py is package manager incompatible

    setup.py is interactive, so it's broken for any distro that your script doesn't automagically detect. Why does it even attempt to do that? Setuptools and distutils are distro-agnostic.

    question 
    opened by hasufell 32
  • Fix broken tests

    Fix broken tests

    • setting BITMESSAGE_HOME doesn't always work, so we wrote a function to do this
    • logger and BMConfigParser now clear old config when loading new
    • add method for flushing log files
    • rework logic in test_logger
    • detect thread names on UNIX-like OSes
    • be more accurate when starting or stopping a process, better waiting mechanisms
    • add extra cleanup during TestProcess start
    bug test build 
    opened by PeterSurda 29
  • flatpak-builder support

    flatpak-builder support

    Recent distributions like Debian bullseye don't support QT4 anymore. This pull request provides a flatpak-builder configuration and instructions how to package PyBitmessage as a flatpak application which bundles QT4.

    This pull request is also a necessary requirement for https://github.com/Bitmessage/PyBitmessage/issues/1607

    duplicate packaging build 
    opened by zciendor 27
  • Sending messages to yourself

    Sending messages to yourself

    It appears that the current implementation of PyBitmessage does not support sending of messages to yourself, or other addresses that you own. (within the same client instance) When I comment this section of the code out, the client hangs on "Sending public key request. Waiting for reply."

    What type of development needs to be done in order to support this? Email and Bitcoin both support sending to your own address(es), thus I think we should enable this for Bitmessage.

    Thoughts?

    opened by acejam 26
  • Follow PEP8 and trust Guido

    Follow PEP8 and trust Guido

    Hello!

    This is an appeal to contributors: write more pythonic code! Please read PEP8 carefully and don't trust linters bugs.

    About 79 characters line length limit, I repeat it here: readability has nothing to do with your screen size.

    Not sure is it correct to add symlink into repository. Some setuptools commands wont work without it.

    opened by g1itch 26
  • [Feature Request] Ubuntu integration: Application Indicator, Messaging menu, Launcher shortcuts

    [Feature Request] Ubuntu integration: Application Indicator, Messaging menu, Launcher shortcuts

    • [x] Application Indicator This provides access to key features of Bitmessage.
      • [x] mono icon (compare /usr/share/icons/ubuntu-mono-dark/status/24)
    • [x] Messaging menu The entry could look like this:
      • Pybitmessage
        • New message
        • Contacts
        • 1 new message (from John Doe)
    • [x] Launcher shortcut This is very easy to implement when the application supports command line options.
    • [x] Notify OSD This informs the user about new messages and connection loss.
    • [x] Most importantly, Ubuntu users have no easy way to install Pybitmessage. Even though it may be too early to get Pybitmessage into the Debian repositories, there are several options to make it more convenient to install this application:
      • Provide a single official .deb file
      • Provide a portable statically linked executable
      • Provide a PPA
    opened by omyno 26
  • bitmessage dont start up any more when database too large or related

    bitmessage dont start up any more when database too large or related

    memory overflow at 1.79gigabytes ram consumption on windows 32bit machine running provided latest win32 binary of bitmessage.exe

    bitmessage.exe recently crashed during runtime with qt4...dll gui or similar, and now never starts up any more in the end, as it crashes with unknown memory error whenever it is started up now and taskmanager and other process related tools show that its memory consumption grows up til exactly right below 1.8gigs of ram then it gives this crash. reproducable.

    some days ago I think there was a post on the general channel public shared address list talking exactly about this phenomenon back then already

    apparently now its happening for me.

    bitmessage must not read the total database and keep too many objects in ram, but should only read the database if needed and not store too many objects in ram.

    bug 
    opened by subscribernamegoeshere 26
  • UPnP doesn't always work

    UPnP doesn't always work

    On my system UPnP doesn't work. UPnP is checked, some port (18XXX) is specified, but UPnP page on the router never shows bitmessage. It does show ZeroNet and Skype, just not bitmessage.

    FreeBSD 10.3

    (Before I was running with manually opened port and it worked fine.)

    bug 
    opened by yurivict 24
  • Changed copyright year to 2019

    Changed copyright year to 2019

    Changed copyright year to 2019. Also changed start year to 2012 some places since that is what's correct according to Github.

    opened by sandakersmann 24
  • define and enable netcat operating mode

    define and enable netcat operating mode

    This PR enables a special headless operating mode ("netcat" mode) where all object processing is disabled. Instead, raw objects received from the network are output to STDOUT unprocessed, also, any valid raw objects received on STDIN are broadcast to the network.

    The STDOUT format is one object per line, formatted as:

    • current timestamp as a zero-padded 16-digit hex number
    • a TAB character
    • the object in HEX encoding

    The STDIN format is one object per line, which can be either a single HEX-encoded object or the format described for STDOUT above (in the latter case the timestamp will be ignored).

    Example: 000000005aa29ada 00000000014f5b6a000000005aa7c646000000000401c5a40f3411817a9ba03df27d7839dd98b854d4fea089f6ffa9c251456e1f61e5

    This is part of a larger effort to compartmentalize the PyBitmessage operating layers in order to better contain network-borne attacks, and from this perspective it is an incomplete solution. However, it also provides some immediate benefits such as the ability to generate a timestamped full record of network traffic for later examination/replay, as well as enabling developers to broadcast protocol objects generated externally.

    As usual, all comments and questions will be appreciated.

    enhancement 
    opened by f97ada87 23
  • Please, commit your changes or stash them before you can merge. Aborting ?? help on updating!

    Please, commit your changes or stash them before you can merge. Aborting ?? help on updating!

    After a few months of not updating Bitmessage, i do a git pull on Ubuntu in PyBitmessage dir, and shows this error in terminal: "Please, commit your changes or stash them before you can merge. Aborting"

    Please help on forcing git pull for easy update after long time?

    Also another question, I ended up doing:

    git clone https://github.com/Bitmessage/PyBitmessage "/home/$USER/PyBitmessage/"
    rsync -h --progress --stats -r -t --modify-window=1 -l -D --update "/home/$USER/PyBitmessage/" "$BitmessageDir"
    

    Would this be considered an alternative and safe way while keeping settings intact?

    opened by ghost 23
  • Error on send message via API

    Error on send message via API

    If you send a message to an address registered in the address book via API, an error will be returned.

    2021-12-11 02:50:58,436 - ERROR - too many values to unpack
    Traceback (most recent call last):
      File "api.py", line 1514, in _dispatch
      File "api.py", line 1487, in _handle_request
      File "api.py", line 1137, in HandleSendMessage
    ValueError: too many values to unpack
    

    OS: Windows 10 21H1 PyBitmessage: 0.6.3.2 20211207

    bug 
    opened by teruteru128 22
  • BitMessage doesn't connect to the network on Whonix 14.

    BitMessage doesn't connect to the network on Whonix 14.

    Hello BitMessage's Community,

    I'm trying to use Bitmessage on Whonix 14 but it won't connect. It did on the previous version Whonix-13.0.01.4 (with a yellow light in my case)

    Please find below some screenshots of my current configuration :

    58735d4cabfc2258bb82c133a4b6f4fb945cd6a5_1_690x493 9a3709e6e5d5dd9a8da5050ddd422d935711aa5e

    I suppose without being an expert that there is a bug with the last version. In fact, when I as example click on "About" on the tab window, Bitmessage doesn't show me the version neither the update and so on I am using... Furtherway, it doesn't save some of the configuration options I set after quitting the application. (Without killing it)

    Does anybody was able to use Bitmessage on Whonix 14 and got a connection ? If so what should I change ? If not, should I install another version ?

    Thank you for your help and best regards.

    opened by Cottonwoodhill 22
  • OpenSSL on Debian

    OpenSSL on Debian

    Debian 6.0.6 Kernel 3.7.8 Python 2.6.6 PyOpenSSL and OpenSSL installed.

    python bitmessagemain.py Traceback (most recent call last): File "bitmessagemain.py", line 55, in import highlevelcrypto File "/home/rricci/Build/sources/PyBitmessage/highlevelcrypto.py", line 1, in import pyelliptic File "/home/rricci/Build/sources/PyBitmessage/pyelliptic/init.py", line 16, in from .openssl import OpenSSL File "/home/rricci/Build/sources/PyBitmessage/pyelliptic/openssl.py", line 427, in raise Exception("Couldn't load the OpenSSL library. You must install it. Error message:"+err) TypeError: cannot concatenate 'str' and 'exceptions.AttributeError' objects

    opened by rricci2009 21
  • Archlinux Package

    Archlinux Package

    The section "compiling instruction" in Wiki¹ can be updated for archlinux, there is a package for Bitmessage. Please check the discussion².

    1=https://bitmessage.org/wiki/Compiling_instructions 2=https://bitmessage.org/wiki/Talk:Compiling_instructions

    enhancement 
    opened by Klexx 18
  • Continuing work to convert print statements into logger messages.

    Continuing work to convert print statements into logger messages.

    This work is incremental on xj9's pending pull request "Better logging". This converts some more print statements to logger calls. Along the way I also pruned down some long lines for sanity on a small screen (sorry to mix such different changes in one commit). Another apology: this pull was supposed to go to xj9/PyBitmessage, not here. Oh well.

    opened by fiatflux 18
  • *SensitiveFilePermissions fails on ntfs-3g mounted filesystems

    *SensitiveFilePermissions fails on ntfs-3g mounted filesystems

    To share my files between Windows and Linux, my ~/.config/PyBitmessage is a symlink to the filepath on Windows. The NTFS partition is mounted using ntfs-3g. Due to this, the permissions cannot be changed. This causes an exception to be raised at startup.

    Suggested fix: check the filesystem rather than the platform

    Current workaround: comment out line 371 in shared.py

    opened by nimdahk 18
  • Moved config directory and now receiving duplicates

    Moved config directory and now receiving duplicates

    Hello,

    A few weeks ago I moved my .config/PyBitmessage to another computer, ran bitmessage from there for a few days and moved it back to its original place. Everything works fine except since then I receive many messages I've already received.

    I think I only receive duplicates of messages that first arrived before I made this config switch, but I'm not sure.

    It's different from #611 because the duplicates are still there after I restart bitmesssage.

    I'm running current master.

    wontfix 
    opened by sigmike 18
  • Add support for IPv6

    Add support for IPv6

    Here's a patch to add IPv6 support.

    My bitcoin address is 1KChwCCANvJYWhWyusSZskDGywUjj7n6De in case the people on this reddit post are listening:

    http://www.reddit.com/r/bitmessage/comments/1yqxvl/bitcoin_bounty_for_adding_ipv6_support/

    opened by bpeel 18
  • Bitmessage Always crash

    Bitmessage Always crash

    Using Bitmessage_x86_0.6.3.2.exe on win7 x64

    debug.log

    2018-07-30 18:24:08,782 - ERROR - C PoW test fail. Traceback (most recent call last): File "proofofwork.py", line 256, in init File "proofofwork.py", line 106, in _doCPoW ValueError: Procedure probably called with too many arguments (12 bytes in excess) 2018-07-30 18:24:12,611 - WARNING - No indicator plugin found 2018-07-30 18:24:12,611 - WARNING - No notification.message plugin found 2018-07-30 18:27:07,790 - ERROR - 95.85.40.163:8444 error: 2, Server full, please try again later. 2018-07-30 18:28:36,108 - ERROR - 206.248.139.204:8444 error: 2, Too many connections from your IP. Closing connection. 2018-07-30 18:28:49,931 - ERROR - 144.76.78.214:8444 error: 2, Too many connections from your IP. Closing connection. 2018-07-30 18:29:18,160 - ERROR - 206.248.139.204:8444 error: 2, Too many connections from your IP. Closing connection. 2018-07-30 18:29:50,267 - ERROR - 95.85.40.163:8444 error: 2, Server full, please try again later.

    Dump file. Bitmessage_x86_0.6.3.2.exe.4732.dmp.7z.zip

    bug 
    opened by k79e 18
  • Messages with same content

    Messages with same content

    If the client receives several messages with the same content it shows only one message in the inbox (acknowledgement is sent like normal). Even if one message is already in the trash and the inbox is empty. Can someone confirm that ?

    opened by Klexx 18
  • crash on start (OS X)

    crash on start (OS X)

    i had 0.3.5 working on OS X 10.6.8, now i updated to the newest 0.4.4 and it don't start anymore.

    Process:         launchd [41724]
    Path:            /Applications/Bitmessage.app/Contents/MacOS/Bitmessage
    Identifier:      org.pythonmac.unspecified.Bitmessage
    Version:         ??? (???)
    Code Type:       X86-64 (Native)
    Parent Process:  launchd [235]
    
    Date/Time:       2014-10-20 20:04:05.342 +0200
    OS Version:      Mac OS X 10.6.8 (10K549)
    Report Version:  6
    
    Interval Since Last Report:          210986 sec
    Crashes Since Last Report:           3
    Per-App Crashes Since Last Report:   1
    Anonymous UUID:                      7C4F96F2-E52A-4BEB-B70E-58F1A76B44BD
    
    Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
    Exception Codes: KERN_INVALID_ADDRESS at 0xfffffffffffffff8
    Crashed Thread:  Unknown
    
    Backtrace not available
    
    Unknown thread crashed with X86 Thread State (64-bit):
      rax: 0x0000000000000055  rbx: 0x0000000000000000  rcx: 0x0000000000000000  rdx: 0x0000000000000000
      rdi: 0x0000000000000000  rsi: 0x0000000000000000  rbp: 0x0000000000000000  rsp: 0x0000000000000000
       r8: 0x0000000000000000   r9: 0x0000000000000000  r10: 0x0000000000000000  r11: 0x0000000000000000
      r12: 0x0000000000000000  r13: 0x0000000000000000  r14: 0x0000000000000000  r15: 0x0000000000000000
      rip: 0x00007fff5fc01028  rfl: 0x0000000000010203  cr2: 0xfffffffffffffff8
    
    Binary images description not available
    
    Model: iMac11,3, BootROM IM112.0057.B00, 4 processors, Intel Core i7, 2.93 GHz, 16 GB, SMC 1.59f2
    
    bug 
    opened by davidak 17
  • Client sends ack for blacklisted addresses

    Client sends ack for blacklisted addresses

    The client seems to send ack messages to blacklisted addresses, so they know, that the client is online. Is this intended?

    opened by AyrA 17
  • Allow testing with python3

    Allow testing with python3

    Hello!

    I'm trying to implement first step of #1712. Any tests module calling tests.common.skip_python3() upon import will be skipped when ran with python3. Currently all modules call it because of imports: for python3 you probably need another pathmagick.

    opened by g1itch 17
  • BM uses too much memory: process size is almost 1GB.

    BM uses too much memory: process size is almost 1GB.

    After a while the process size grows to 960MB for me. This is too much for a communication program. DB size is 75MB (messages.dat).

    bug 
    opened by yurivict 17
  • BM still listens for inbound connections when connected through tor, green

    BM still listens for inbound connections when connected through tor, green "light" is on.

    Instance is configured to connect through SOCKS5/tor. "Listen for connections on port" is grayed out. Incoming connections should be disabled (because there is no HS support yet). Yet it shows the green light that means that there are incoming connections. netstat shows that it listens on the port that is grayed out by SOCKS5 option.

    This is wrong because SOCKS5 forwards connections out to some other host with different IP, yet listening and incoming connections indicate that the real IP is exposed.

    This is a security problem.

    enhancement 
    opened by yurivict 16
  • Security Profiles Firejail/AppArmour

    Security Profiles Firejail/AppArmour

    I'm pretty much a noob at writing these, so I would wait for someone such as @chiraag-nataraj or other regular firejail users to critique these and see if it can be hardened more. Once they are finalized we can push for upstream inclusion.

    However, they are working for me from git version of PyBitmessage located at $HOME.

    Firejail:

    # Firejail profile for PyBitmessage
    # This file is overwritten after every install/update
    # Persistent local customizations
    include /etc/firejail/pybitmessage.local
    # Persistent global definitions
    include /etc/firejail/globals.local
    
    noblacklist ${HOME}/.config/PyBitmessage
    noblacklist ${HOME}/PyBitmessage/src/bitmessagemain.py
    
    include /etc/firejail/disable-common.inc
    include /etc/firejail/disable-devel.inc
    include /etc/firejail/disable-passwdmgr.inc
    include /etc/firejail/disable-programs.inc
    
    mkdir ~/.config/PyBitmessage
    whitelist ~/.config/PyBitmessage
    include /etc/firejail/whitelist-common.inc
    
    caps.drop all
    netfilter
    no3d
    nodvd
    nogroups
    nonewprivs
    noroot
    notv
    novideo
    protocol unix,inet,inet6
    seccomp
    shell none
    
    disable-mnt
    private-dev
    private-bin pybitmessage,python,python2,python2.7
    private-tmp
    
    noexec ${HOME}
    noexec /tmp
    

    AppArmour:

    #include <tunables/global>
    
    /home/*/PyBitmessage/src/pybitmessagemain.py {
    
        #include <abstractions/base>
        #include <abstractions/python>
    
        owner @{HOME}/PyBitmessage/ r,
        owner @{HOME}/PyBitmessage/** mr,
        owner @{HOME}/PyBitMessage/nw ix,
        owner @{HOME}/PyBitmessage/config/** mrwk,
    
        owner @{HOME}/.config/PyBitmessage/ rw,
        owner @{HOME}/.config/PyBitmessage/** rwmk,
    
        / r,
    
        network,
    
    }
    
    enhancement security 
    opened by gitbugged 16
  • No peer-to-peer encryption leads to de-anonymization

    No peer-to-peer encryption leads to de-anonymization

    Maybe I'm wrong, but there doesn't seem to be any encryption between peers. If this is the case, then it's trivial to determine the public key associated with a given node. A passive observer can look at all incoming and outgoing traffic from a node and de-anonymize rather easily. Simply wait for the node to send out a pubkey object which was not sent in. Similarly, you can look for new getpubkey objects to determine who that node is talking to. Adding simple encryption between peers with Diffie-Hellman key exchange and AES or something similar would solve this problem.

    enhancement 
    opened by godel9 16
  • Refactor winbuild.sh

    Refactor winbuild.sh

    I have made the same changes as BeholdersEye's in winbuild.sh. #1933

    opened by shekhar-cis 0
  • Refactor default.ini

    Refactor default.ini

    I have removed dontconnect from default.ini, now network connecting popup will appear once.

    opened by shekhar-cis 0
  • Kivy Allmail screen

    Kivy Allmail screen

    Added allmail.py kivy screen inside bitmessagekivy/baseclass

    opened by shekhar-cis 0
  • Kivy Addressbook screen

    Kivy Addressbook screen

    Added addressbook.py kivy screen inside bitmessagekivy/baseclass

    opened by shekhar-cis 0
  • Update winbuild.sh

    Update winbuild.sh

    changes proof of work gcc machine architecture setting from "native" to "x86-64" and "i686" as appropriate to allow the resultant binary to run on CPU's other than the on which the binary was compiled.

    https://github.com/Bitmessage/PyBitmessage/issues/1919

    performance build 
    opened by BeholdersEye 17
  • Add main.kv in kivy live

    Add main.kv in kivy live

    Added main.kv: inside bitmessagekivy/main.kv, Symlinked with kivy mock.

    opened by shekhar-cis 0
  • Added Kivy [bitmessagekivy/baseclass]

    Added Kivy [bitmessagekivy/baseclass]

    Added kivy baseclass code which have all the screens(.py fles)

    opened by shekhar-cis 0
  • Outdated installment instructions

    Outdated installment instructions

    The installment/compiling instruction for Ubuntu 20+ are an absolute mess, nothing works as described and you have to figure out a lot of things yourself. Would appreciate better instructions/documentation

    Especially an update to python 3+ is more than overdue...

    opened by Ethaseo 1
  • Kivy mock front-end [WIP]

    Kivy mock front-end [WIP]

    Added baseclass dir which have all the .py file for kivy screens, symlinked kv directory with original one. Pylint code quality fixing is in WIP

    opened by shekhar-cis 0
  • add test sql scripts for sqlthread

    add test sql scripts for sqlthread

    add test SQL scripts for sqlthread

    opened by cis-muzahid 0
Releases(0.6.3.2)
  • 0.6.3.2(Feb 13, 2018)

    This version is an update on 0.6.3 with a more strict exploit mitigation code. Users of 0.6.2 should either upgrade to 0.6.3.2 or downgrade to 0.6.1.

    February 16th: Windows binary available, signed both with a code signing key and a GPG key. Note: there won't be a 64bit Windows binary for 0.6.3.2 due to a lack of time. The new network subsystem has significantly improved CPU and memory requirements so you shouldn't be running low on memory even with the 32bit binary.

    February 17th: OSX binary available, only GPG signed, will be released code signed in the near future.

    February 19th: OSX code signing delayed for a couple of days for technical reasons.

    Source code(tar.gz)
    Source code(zip)
    bitmessage-v0.6.3.2.dmg(35.47 MB)
    bitmessage-v0.6.3.2.dmg.asc(455 bytes)
    Bitmessage_x86_0.6.3.2.exe(33.78 MB)
    Bitmessage_x86_0.6.3.2.exe.asc(455 bytes)
  • v0.6.3(Feb 13, 2018)

    Version 0.6.2 has a bug that can be exploited for remote code execution. This is an emergency release, and 0.6.4 will be released in a couple of days with cleanup originally intended for 0.6.3, and full release notes. Everyone who uses 0.6.2 should upgrade (or, if upgrade is not possible, downgrade).

    Apart from the emergency fix, this release contains a new network subsystem which requires less resources (CPU and memory) and the Dandelion++ protocol extension for enhanced privacy.

    Windows and OSX binaries follow soon.

    Source code(tar.gz)
    Source code(zip)
  • v0.6.2(Mar 1, 2017)

    Usability:

    • many minor usability improvements, in particular helpful for beginners
    • get rid of confusing log messages
    • improved feedback when busy during shutdown
    • UI feedback when problems with proxy
    • UI feedback when local time is wrong
    • UI feedback when C PoW module is not available
    • folder loading performance improved
    • translations updated
    • chan join/create interface redesigned
    • can select OpenCL vendor if multiple are available (previously it would have crashed)
    • locale initialisation fixes
    • contact support form and About dialog show the GIT head
    • added setup.py (setuptools) for easier installation
    • gentle warning if sending to a chan with a too low TTL
    • message retransmit timing now works as the description

    Fixes:

    • networking subsystem stability fixes
    • multiprocessing python PoW fixed
    • message parser fixes
    • many smaller fixes
    • OpenBSD listening socket fix (works IPv4-only mode instead of not at all)

    Backend:

    • try to auto-build PoW module
    • networking subsystem performance improvements
    • refactoring of configuration interface, inventory, downloading and uploading tracking, known nodes and other minor parts
    • refactoring to reduce circular imports and global variables
    • support for OpenSSL 1.1.0 and LibreSSL
    • some network parameters configurable, but mostly only through directly editing keys.dat
    • network settings allow an optimised bootstrap provider mode

    Developers:

    • extended encoding available for testing. Use it by holding Shift while clicking on Send
    • extended encoding can be extended by adding new classes to the "messagetypes" directory
    • directory structure reorganisation to get rid of obsolete code

    Linux:

    • setup.py detects Ubuntu, Debian, Fedora, openSUSE, Gentoo and Guix

    FreeBSD/OpenBSD:

    • separate Makefile for BSD make
    • C PoW core count detection fixes for OpenBSD
    • setup.py detects FreeBSD and OpenBSD

    Windows:

    • improved error handling
    • separate Makefile for Microsoft Visual C++
    • pyinstaller spec file updated
    • 64bit binary does not require MSVC Redistributable 2012 anymore and is mostly built with mingw instead of MSVC
    • updated Python to 2.7.13 and OpenSSL to 1.0.2j/1.0.2k

    OSX:

    • binary works with OpenCL
    • updated to Python 2.7.13 and OpenSSL 1.0.2k

    Infrastructure:

    • 3 additional bootstrap nodes
    • new server for building/testing
    • transifex webhooks automate translation workflow
    • integration with landscape.io for code quality checking
    Source code(tar.gz)
    Source code(zip)
    bitmessage-v0.6.2.dmg(36.09 MB)
    bitmessage-v0.6.2.dmg.asc(473 bytes)
    Bitmessage_x64_0.6.2.exe(32.38 MB)
    Bitmessage_x64_0.6.2.exe.asc(473 bytes)
    Bitmessage_x86_0.6.2.exe(29.10 MB)
    Bitmessage_x86_0.6.2.exe.asc(473 bytes)
    PyBitmessage-0.6.2.tar.gz.asc(473 bytes)
    PyBitmessage-0.6.2.zip.asc(473 bytes)
  • v0.6.1(Aug 21, 2016)

    • Translation update and localisation fixes
    • Minor bug fixes
    • Minor UI improvements
    • Namecoin integration fixed and improved
    • SMTP server and client interface
    • Tor hidden service support
    • C PoW builds and runs on *BSD
    • Windows binary:
      • fixed build
      • upgraded to Python 2.7.12 and OpenSSL 1.0.2h
      • 64bit binary available for download
      • self-built PyInstaller bootloader should trigger fewer antivirus false positives
    • Mac OSX binary:
      • upgraded to Python 2.7.12 and OpenSSL 1.0.2h
    Source code(tar.gz)
    Source code(zip)
    Bitmessage-0.6.1.exe(28.03 MB)
    Bitmessage-0.6.1.exe.asc(473 bytes)
    Bitmessage-0.6.1_64.exe(32.08 MB)
    Bitmessage-0.6.1_64.exe.asc(473 bytes)
    bitmessage-v0.6.1.dmg(39.53 MB)
    bitmessage-v0.6.1.dmg.asc(473 bytes)
Synapse: Matrix reference homeserver

Synapse Contents Introduction About Matrix Support Synapse Installation Connecting to Synapse from a client Registering a new user from a client ACME

matrix.org 9k Feb 21, 2022
the first third-party instant messaging client for Google Hangouts

hangups hangups is the first third-party instant messaging client for Google Hangouts. It includes both a Python library and a reference client with a

Tom Dryer 1.7k Feb 24, 2022
A free & open modern, fast email client with user-friendly encryption and privacy features

Welcome to Mailpile! Introduction Mailpile (https://www.mailpile.is/) is a modern, fast web-mail client with user-friendly encryption and privacy feat

mailpile 8.6k Feb 26, 2022
Mysterium the first tool which permits you to retrieve the most part of a Python code even the .py or .pyc was extracted from an executable file, even it is encrypted with every existing encryptage. Mysterium don't make any difference between encrypted and non encrypted files, it can retrieve code from Pyarmor or .pyc files.

Mysterium the first tool which permits you to retrieve the most part of a Python code even the .py or .pyc was extracted from an executable file, even it is encrypted with every existing encryptage. Mysterium don't make any difference between encrypted and non encrypted files, it can retrieve code from Pyarmor or .pyc files.

Venax 57 Feb 26, 2022
Privacy enhanced BitTorrent client with P2P content discovery

Tribler Towards making Bittorrent anonymous and impossible to shut down. We use our own dedicated Tor-like network for anonymous torrent downloading.

null 4k Feb 25, 2022
twtxt is a decentralised, minimalist microblogging service for hackers.

twtxt twtxt is a decentralised, minimalist microblogging service for hackers. So you want to get some thoughts out on the internet in a convenient and

buckket 1.7k Feb 23, 2022
Decentralised graph database management system

Decentralised graph database management system To get started clone the repo, and run the command below. python3 database.py Now, create a new termina

Omkar Patil 1 Dec 16, 2021
A p2p chat app for zephyr

A p2p chat app for zephyr

L3gacy B3ta 4 Jun 2, 2021
a decompilation of NAP36 the widevine removal software for amz and nf used by p2p groups until it stoped working due to it using expired cdm keys

NAP36 a decompilation of NAP36 the widevine removal software for amz and nf used by p2p groups until it stoped working due to it useing expired cdm ke

null 9 Aug 29, 2021
Simple P2P application for sending files over open and forwarded network ports.

FileShareV2 A major overhaul to the V1 (now deprecated) FileShare application. V2 brings major improvements in both UI and performance. V2 is now base

Michael Wang 1 Nov 23, 2021
PyTorch implementation of CVPR 2020 paper (Reference-Based Sketch Image Colorization using Augmented-Self Reference and Dense Semantic Correspondence) and pre-trained model on ImageNet dataset

Reference-Based-Sketch-Image-Colorization-ImageNet This is a PyTorch implementation of CVPR 2020 paper (Reference-Based Sketch Image Colorization usin

Yuzhi ZHAO 10 Nov 15, 2021
This repository contains numerical implementation for the paper Intertemporal Pricing under Reference Effects: Integrating Reference Effects and Consumer Heterogeneity.

This repository contains numerical implementation for the paper Intertemporal Pricing under Reference Effects: Integrating Reference Effects and Consumer Heterogeneity.

Hansheng Jiang 1 Feb 8, 2022
A simple Encrypted IM chat software Server & client based on Python3.

SecretBox A simple Encrypted IM chat software Server & client based on Python3. Version 1.0 命令行版 安装步骤 Server 运行pip3 install -r requirements 安装依赖。 运行py

h3h3da 4 Dec 31, 2021
This is a zeep based SOAP client wrapper for simple communication with the Bricknode SOAP API.

This is a zeep based SOAP client wrapper for simple communication with the Bricknode SOAP API.

Nord Fondkommission AB 2 Dec 15, 2021
Standalone script written in Python 3 for generating Reverse Shell one liner snippets and handles the communication between target and client using custom Netcat binaries

Standalone script written in Python 3 for generating Reverse Shell one liner snippets and handles the communication between target and client using custom Netcat binaries. It automates the boring stuff like URL encoding the command and setting up a listener.

Yash Bhardwaj 1 Jan 29, 2022
Clubhouse API written in Python. Standalone client included. For reference and education purposes only.

clubhouse-py is originally developed for the sake of interoperability. Standalone client is also created with very basic features, including but not limited to the audio-chat

null 1.7k Feb 27, 2022
PyBeacon is a collection of scripts for dealing with Cobalt Strike's encrypted traffic.

PyBeacon is a collection of scripts for dealing with Cobalt Strike's encrypted traffic. It can encrypt/decrypt beacon metadata, as well as pa

NCC Group Plc 159 Jan 4, 2022
Generate links that users can use to submit messages encrypted with your public key.

Hawkpost Hawkpost lets you create unique links that you can share with the person that desires to send you important information but doesn't know how

Whitesmith 871 Feb 26, 2022
Generate simple encrypted messages!

Premio's Shift is a very simple text encryption, you can use it to send secret messages to your friends. Table of Content Table of Content How it work

Peterson Adami Candido 3 Aug 6, 2021
Alpkunt 7 Dec 2, 2021
PGP encrypted / multipart templated emails for Django

Created by Stephen McDonald Introduction django-email-extras is a Django reusable app providing the ability to send PGP encrypted and multipart emails

stephenmcd 74 Dec 20, 2021
Hyval will store your information encrypted and decrypt it when needed

Hyval will store your information encrypted and decrypt it when needed

soroush safari 3 Oct 31, 2021
Privfiles - Encrypted file storage using Fernet with zero Javascript

Privfiles - Encrypted file storage using Fernet with zero Javascript Source code for the onion service: l3n6v6dm63frml22tlmzacnasvp7co7wylu4hhcs34ukxe

Ward 4 Dec 30, 2021
Get the length of the Instagram encrypted password

instagram-weak-encryption Get the length of the Instagram encrypted password Introduction Instagram and Facebook encrypt the password submitted at log

Giuseppe Criscione 5 Feb 22, 2022
Privfiles - Encrypted file storage using Fernet with zero Javascript

Privfiles - Encrypted file storage using Fernet with zero Javascript Source code for the onion service: l3n6v6dm63frml22tlmzacnasvp7co7wylu4hhcs34ukxe

null 4 Dec 30, 2021
This is an experimental AES-encrypted RPC API for ESP 8266.

URPC This is an experimental AES-encrypted RPC API for ESP 8266. Usage The server folder contains a sample ESP 8266 project. Simply set the values in

Ian Walton 1 Oct 26, 2021
NFC Implant-base RSA Encrypted Messagging application

Encrypted messaging application with the use of MIFARE DESfire chip to store the private/public keys needed for the application authentication

null 4 Nov 6, 2021
Just to play with my kids: create a secret alphabet and exchange encrypted messages

Secret Alphabet Description This project allows you to randomly generate an alphabet (a set of characters) and its corresponding translation. For the

BS 1 Nov 12, 2021
Encrypted Python Password Manager

PyPassKeep Encrypted Python Password Manager About PyPassKeep (PPK for short) is an encrypted python password manager used to secure your passwords fr

KrisIsHere 1 Nov 17, 2021