crypto is a lot more open a field for research, than i had realised,
and there is alot more interest in the study of crypto systems than i had realised.
so i would like to explain the "dumb pipe" and "smart crypto" to a different level.
when designing secure systems it is rare to start at the finish and work backwards,
but IN UCE (user controlled encryption) this is the case, as the security of the system was predicated on a new transport. the transport uses a new
method to abstract the three layers of the traditional internet transport into one unified system. this requires redesigning how a different network
layers communicate with each other, and allowing all the required information to flow "at one layer"
a complex algorithm was devised to allow network information from different abstract layers to be communicated in a system that compressed all this
information into a logical "transport layer"
by providing a forward error correction mechanism into the new transport, the reliable transport of information could be achieved and a second
co-efficient effect was available for exploit.
the reliable encode/decode cycles of encryption could also be "accounted" for and "packet order and assembly tracking could be achieved. this meant
the data destined for transportation could be "verified" as it was encrypted and as it is transported and as it is delivered and unencrypted, and
finally verified as it was written to the disk.
so we now have a system that can encode information and send it and verify what was received at the other end was actually what was sent with high
one upside is that the transport is about 50% more efficient when considering the amount of packets sent compared to standard protocols, to transmit
the same volume of data, = less packets of data and in a shorter amount of time.
i wont go into high level detail how the dump pipes work, but i will explain there part to play in the smart crypto part of this OP.
so we have abstracted the network layers and designed a transport with error correction and data integrity functions and provided for a software
defined network, so how does two computers on the network "connect" or network together?
end to end encryption allows for two end points to "agree" on a handshake that will allow secure exchanges of "cryptographic keys" in this case
SSL (secure socket layer) so that any communications are encrypted prior to transport.
"dumb pipes" or "software defined networks" was a natural consequence of the abstracted network layers and are used to apply a "routing network"
or "pipe" to a destination, (abstract is a transport network layer over the top of the existing internet structure) these pipes can be thought of as
a virtual PBX (private branch exchange) where the software defines the path through a virtulised, connection exchange environment.
this is why they are pipes, they allow an end to end connection "pipe" (connection) between to points without relying on the traditional network
layer of the internet.
dumb pipes because the end to end nature of the connection "set up" the pipe and not the service providers hardware infrastructure and not the open
protocols of the internet. in effect the system running the virtual PBX did not need to know the different protocols that would be required to pass
data across the network, as it was compressed into the transport layer, and all routing and path and timing information was decided at "both
this is where the dump pipe meets the smart crypto.
so we have "dumb pipes" that will "connect" end points thanks to the virtualised PBX (software defined network)
how do we connect "with" the pipes in a way that is secure?
first of all if the pipe is "attacked" it is torn down, second the connection uses HTTPS (hyper text transfer protocol secure) a secure encrypted
connection, to protect data.
connecting with the pipes
the HTTPS connection allows for secure "delivery" into the web browser, of the cryptographic program used to encrypt/encode the data for the new
transport. the crypto hash (fingerprint) of the program is sent to the web browser and checked against what was downloaded to ensure the program was
not tampered with.
this crypto program loads up in the browser, and a file or other data is feed to the crypto program, which encrypts the data and encodes the
abstracted layers and compresses them and sends them over the dump pipe to the destination disk, as the encryption is carried out the forward error
correction allows data integrity to be verified, as the data is transported the forward error correction allows the data to verified on delivery and
on writing to the disk the froward error connection allows the data to be verified as it is written to hard disk.
it is the smart crypto that is extended (into the web browser) to the end user that negotiates the pipe
so why is it smart crypto if it uses a dumb pipe?
the smart part is UCE or user controlled encryption,
by not having the password stored on the server, only the user has access to the encryption keys,
by pushing out the encryption program each time a connection is made, the program can be updated centrally
by having a dumb pipe ONLY the user can find his data.
by having forward error correcting, the data can be transported securely without data loss
because the pipes are dumb, there is no advantage to attacking them, and they break if you do.
because only the user has the keys there is no central store of hashed passwords to be a target,
i dont write code so i cant answer any questions on that side of things,(i dont know)
but can explain the theory (up to a point) as long as specifics are not required
all in all this looks to be a strong design with plenty of room to scale and lots of promise,
so as you can see this is a ground up redesign of the delivery of encryption, from transport to routing to delivery,
except it uses the existing trusted crypto for the encode decode functions.
ie AES RSA ect
there is much i have left out, as im trying to keep it simple.
please ask questions or point out errors if you can spot them