Skip to main content

isoring

a component from the terminated project, puissec.

A structure called the IsoRingedChain is supposed to guard a big secret, comprised of a sequence of arbitrarily-lengthed vectors (secrets).

Current version on pypi.org:

0.1.8

This project has peaked in development.

What is a Secret?

Who knows, really?

In this computer program, a secret is represented by a finitely lengthed vector. The Sec structure contains this vector of length n, as well as k additional vectors in the same dimension of n. These k+1 vectors are the local optima of n-space in real numbers. Every one of those vectors has an associated probability value, the probability values adding up to one. These probability values can be arbitrary, meaning the actual secret (vector) of Sec may have any probability value in [0,1.]. Design of Sec is based on the common machine-learning problem of choosing local optima over the best solution.

The IsoRing structure contains the secret, a vector in finite space. It contains that secret in one Sec instance. IsoRing also holds an additional j Sec instances, each of these Sec instances in a unique finite vector dimension. These j instances serve as buffers to third-party acquisition of the actual Sec instance. In effect, IsoRing has two primary layers of defenses: the j Sec instances and the r_j >= 1 alternative local optima to the actual vector of some Sec.

At any point in program run, outward representative of IsoRing is exactly one Sec instance, the isomorphic representation (iso-repr).

In order for a third-party to interact with an IsoRing for information, third-party will have to interact with feedback function of IsoRing. For an IsoRing in iso-repr vector dimension q, feedback function provides a k_q-vector of distance scores, k_q the number of local optima to vector dimension q. Distance scores are conventionally euclidean point distances. However, there are alternative feedback functions that provide distorted distance scores via pseudo-random number generator.

NOTE:
In this open implementation of cracking simulations involving IsoRing, the Cracker does not consider the feedback function vectors. Doing so adds a layer of complication that is better placed in programs that rely on this project's code. Cracker uses background information during its cracking attempts, instead of interpreting the feedback vectors it receives every time it makes a guess on an IsoRing.

For a sequence of arbitrarily-lengthed vectors (secrets), an IsoRingedChain is used to cover it and this structure is, in turn, composed of a number of IsoRings equal to the number of those vectors (secrets).

What is an Isomorphic Ringed Chain?

An IsoRingedChain guards a sequence of vectors (secrets). Any of the IsoRings in an IsoRingedChain may be in an isomorphic representation not of the same dimension of the actual secret. Additionally, every IsoRing in an IsoRingedChain has dependencies and co-dependencies in order for third-party access to it. Dependencies are the IsoRings that must have been "cracked" by the third-party before getting to it, and co-dependencies are the IsoRings that must be "cracked" alongside it. Cracking cannot proceed by an ordering of the IsoRings that violate the specified dependencies and co-dependencies linking these structures together for the IsoRingedChain.

What is Cracking?

In this program, the Cracker structure is responsible for determining all the secrets of an IsoRingedChain. This process of determination is "cracking". The Cracker must attempt cracking in the order specified by all of the contained IsoRings' dependencies and co-dependencies. Otherwise, program will halt Cracker midway, resulting in its failure.

Cracker is given background information, BackgroundInfo, on the target IsoRingedChain.

NOTE: There are deficits to this map design of background information. However, it was chosen because it avoids the Curse of Dimensionality, one of a few major problems that plagued successful complete development of the program puissec, found at github.com/changissnz/puissec. Program puissec was the predecessor of this program isoring. Program isoring is, in fact, a simpler version of only part of the problems in the conceptualization of puissec.

BackgroundInfo has three main components.

  1. Hypothesis map,
    <Isoring> identifier -> <Sec> index -> <HypStruct>.
  2. Suspected IsoRing-to-Sec map,
    <Isoring> identifier -> <Sec> index.
  3. Order of cracking, a sequence with each element
    {set of co-dependent IsoRing identifiers}.

One deficit about design of this BackgroundInfo is the hypothesis map. Every Sec instance can have at most one hypothesis on it. And the HypStruct is focused on exactly one local optimum.

HypStruct represents a hypothesis on a Sec, of vector dimension k, and has these attributes.

  1. Suspected optima index i of the Sec.
  2. Bounds (a k x 2 matrix) suspected to contain optima i.
  3. Hop size h, an integer, uniformly partitioning the bounds into k^h points.
  4. Probability marker P, used to cross-reference with probability output value P' from a cracked Sec.

The probability values in this program are meant to be reference values for a Cracker. If a Cracker uses a HypStruct to crack Sec, and the output probability from Sec differs from that of the HypStruct used, then the Cracker does not accept the cracking vector as the actual secret.

NOTE: these are information games, broadly speaking.

For every IsoRing being targeted by a Cracker, Cracker uses one Crackling at any one time, in order to attempt to crack the IsoRing for the vector (secret) of the IsoRing's suspected Sec. A Cracker will attempt to use as many Cracklings, in re-cracking sessions, for an IsoRing as program permits until Cracker cracks its wanted local optimum from the suspected Sec of said IsoRing.

A structure called a SearchSpaceIterator is employed by every Crackling to execute brute-force cracking attempts on an IsoRing's isomorphic representation. SearchSpaceIterator outputs k^h points that uniformly cover the input bounds of matrix k x 2.

If the Cracker does not have a HypStruct for the IsoRing's isomorphic representation (the second layer in the three-layer hypothesis map), program halts Cracker midway. If the Crackling is successful in cracking the isomorphic representation, IsoRing has to switch its isomorphic representation to an uncracked Sec. If there are none that have not been cracked, IsoRing stops switching its isomorphic representation due to the Cracker no longer being interested in cracking it anymore.

If a Crackling does not produce any (vector, associated probability value) on a Sec, Cracker cannot proceed to attempting to crack any IsoRings dependent on the IsoRing, pertaining to said Sec, being cracked. In most cases, Cracker would be halted.

The Brute-Force Environment

There Are Rules To The Game. The rules are enforced in the environment BruteForceEnv, where a Cracker attempts to crack an IsoRingedChain. A Cracker is granted some arbitrary amount of energy, a real number. If the energy falls to zero or below, program halts Cracker. A Cracker can use only t number of Cracklings at once. If there are co-dependent IsoRing sets in IsoRingedChain that are greater in size than t, successfully cracking the IsoRingedChain is impossible for the Cracker.

What is Successful Cracking? Complete Execution or Complete Acquisition of Actual?

The complete execution of cracking all the IsoRings in an IsoRingedChain can be known by a Cracker by the time the program halts Cracker. However, the BackgroundInfo of a Cracker is what allows it to verify on what the actual vectors from IsoRingedChain are.

Additional Features

Generative methods, found in this program, can be used to produce the relevant data structures. These methods do come in handy since there are a lot of variables to type up by hand.

An Example On the User Interface

Screenshot

Project is also up on pypi.org. Install with
pip install isoring.

Here is an example of use.

Screenshot

Release files for isoring 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for isoring 0.1.9
File Size Uploaded
isoring-0.1.9.tar.gz 31.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for isoring 0.1.9
File Interpreter ABI Platform
isoring-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 58.7 kB

Release files / isoring-0.1.9.tar.gz

Download URL isoring-0.1.9.tar.gz
Size 31.2 kB
Tags Source
SHA-256 checksum
How to use checksums
8b540d2a2be994d21eeabf597edc1aef29d2ddcdd1a8ef4aef93f680f430f9cc
BLAKE2b-256 checksum
How to use checksums
acb69edcf143b0373a4883dfa387bdeb70b541a77c3cce0b976da6d9ffa3fb6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / isoring-0.1.9-py3-none-any.whl

Download URL isoring-0.1.9-py3-none-any.whl
Size 27.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c9382c53fb3d657b2c39788d53198d527724612f6b2ab3b57c92eec0b15369aa
BLAKE2b-256 checksum
How to use checksums
ea3431ab0caef4e012beb215f213838f2632aa2fc2fce6ec58c41a2a80c16338
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release history Release notifications | RSS feed

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page