DBPBE Single Byte Example

Home Specifications Single Byte Example Multi Byte Example Considerations


By Jacob Still January 2020.
Updated January 2021
Code on GitHub
Licensed under GPLv3



These examples will follow the same step numbers shown in the specifications.

Note: The values used in this example are extremely small to be able to do easy calculations and have small graphs.

Encryption

1. Ok, lets say we want to encrypt the byte 0b01001000 (ASCII letter "H"). First we will convert it to a point. In this example, we convert H to (2,-1).

Create Data Points



2. For this 2-Dimensional example, three points are needed to act as key points. Here, we have generated the points K1=(5,1), K2=(-4,3), and K3=(-6,-2).

Generate Key Points



3. The process of encrypting the data is simply calculating the distance between each key point and data point. In our example, we calculate: K1H=3.61, K2H=7.21, and K3H=8.06. Therefore the "encrypted" letter H is: 3.61,7.21,8.06.

Calculating Vectors






Decryption

4. First the key points are set (could be from password or "key file" that was generated and used to encrypt). The encrypted data is then applied to each key point in the form of a radius: RK1=3.61, RK2=7.21, RK3=8.06

Distances Become Radii



5. The intersecting point(s) between each circle is found: IK1K2=(2,-1), I'K1K2=(3.129,4.082), IK2K3=(2,-1), I'K2K3=(-11.103,4.241), IK3K1=(2,-1), I'K3K1=(1.4,1.2)

Calculate Intersection Points



6. In our example, the intersection point that occurs the most is (2,1). Looking the point up in our table, the original byte is 0b01001000.

Most Intersecting Circles



Source for the graphs.