Novels2Search
Immortal
Chapter 23: Test

Chapter 23: Test

"Now you have all written your first program, I will need a volunteer!"

John stood up.

"Good, come to the front of the classroom."

John went to the front of the classroom.

"I want you to use Qi from your dao pillar to power the metallo board. Hand me your admin ring."

John handed his admin ring over.

John injected Qi into the board, but nothing happened.

"It didn't work?"

"Wrong! It is working as intended. You all must know, that the console is only viewable to formation masters. There are two main ways to view the console. One is by injecting Qi with the runic library, such as using a admin ring or dao pillar that has the library inscribed. The formation has two modes. That is normal mode and development mode. If you use the first method, the console is able to be projected for all to see. This projects the full development mode. The second method to view the console is by using 'runic vision' a dangerous technique!"

John's interest was piqued... he quite liked dangerous methods.

"Runic Vision is achieved by saturating Qi from your forbidden dao pillar directly into your eyes. This allows you alone to see the console log. But this is only useful for debugging. You can't edit the console by using runic vision alone. A mistake can cause one to go blind!"

"Today we will also be learning about encryption. But first let me explain what happened earlier when you powered the formation with Qi. The formation failed to recognize you as a formation master. So it booted up in normal mode. This mode just runs what has already been compiled. So the program did indeed run. I was able to see using runic vision, the output. But why was it that you weren't able to see it? It is because the log is private information! It is there purely for debugging purposes. If we had a prompt instead or an alert. A window would of popped up even in normal mode."

"So now let us talk about encryption. Every formation master has a signature that they use. This is used for encrypting their program. As you all know, we use formations to protect our sect, to deliver information, and to perform simulations. But if any rookie in formations is able to edit the formation simply by having a ring or a forbidden dao pillar. What the hell type of security is that!?"

"Your signature can be considered the key to obfuscating. For demonstration purposes, I have intentionally lowered the permissions on this metallo board. A formation master that uses their signature. Even if another master tries to pry into their program, it will be unintelligible nonsense!"

The teacher handed the admin ring back to John.

"You can go back to your seat."

"It would take a genius, no. It would take a monster to be able to understand another persons program that has been obfuscated. There have been legends of monsters in formations that can reconstruct or directly edit someone else's program based off the slight changes in the formation from compiling! I don't expect you guys to reach this level, even I haven't..."

"We will do one more thing before class is dismissed. I want everyone to have developed their own signature! It is a visualization of an image, and it is something you must never share with anyone else."

Everyone spent the rest of the class drawing a mental image.

Then memorizing it.

John decided to imagine a blue star. He based it off the eyes of that weird existence in the chaos realm and his own eyes after being contaminated in his skeletal form.

"Now, I obviously won't be inspecting your signatures. But now, you are probably wondering how you use it?"

"You won't be able to use a signature by using an admin ring. It adds a layer of complexity that would be hard to add to the ring. It is also one of the reasons you need the forbidden dao pillar to do higher leveled stuff. If you wish to protect yourself. You will naturally layer your signature over the millions lines of code inscribed on your dao pillar."

Once everyone was finished. The teacher said one more thing.

"Now, let me briefly talk about decryption. While the program will look like unintelligent nonsense to others. You will be able to overlap your Qi with your signature, it will follow an algorithm and unencrypt the nonsense, restoring it back into readable logic. In future exercises, you will not be encrypting your programs, otherwise it would be inconvenient to check on your progress. Save that for when you pass this class. There are also levels to using your signature. You can encrypt parts or have sections that can be edited by others. My signature is naturally used on this metallo board, but I have allowed it to be viewed by others. This is called the permission level. The highest level of permission is called an administrator. It is the creator of the signature. You then have a lower level permission called an operator, this is someone given a tier of your signature as an outline. These are people you trust not to screw you over. They can view, compile, or otherwise modify your program. You then have users. This is the lowest level of permission. Everyone has this permission. They can't view any of the logic in the code. They at most can access the console log. But remember, no matter who it is. They can run the program by powering the formation. We will talk about authentication in a later discussion to counter this."

The narrative has been taken without authorization; if you see it on Amazon, report the incident.

"Class dismissed!"

John's signature in the end of things he decided to make a blue star. He spent the rest of the day working at condensing a forbidden dao pillar. It was nowhere near close to done. But he had inscribed around 240,000 lines of code into its outline so far.

It was also going to be perfect.

The next class the teacher showed off how to use functions, objects, arrays, and loops as well as the basics on forming an interface for those using the formation at the lowest level of permissions.

He then gave a test.

"You all have been following along in my examples, copying logic that has been tried and tested. But now it is time for a test. I want you to from scratch make a database. As for what you must enter in the database. Use your fellow classmates names and cultivation level. Those who fail to pass this test will have to drop out of the class."

Everyone was shocked! They hadn't expected something like this to happen.

Luckily everyone took the lessons serious. No one was caught lacking.

This wasn't a traditional test in the sense that you couldn't talk to others or share information.

He allowed movement around the class in order to 'collect' data and 'enrich' the database they would be building.

This is the program John wrote:

var database =[];

var placeholder ={};

var storeData = function(){

placeholder.name = prompt("Enter name into database!");

placeholder.cultivation = prompt("Enter cultivation into database.");

database.push(runicLibrary.stringify(placeholder));

};

var retrieveData = function(name){

for(var i=0; i

if(runicLibrary.parse(database[i]).name==name){

log("Name: "+name+", Cultivation: "+runicLibrary.parse(database[i]).cultivation);

alert("Cultivation of "+name+" is "+runicLibrary.parse(database[i]).cultivation);

}

}

};

He then created a simple interface for normal users.

This was done with a single button in the center for entering someone into the database.

It then had an input field at the bottom for entering a name to retrieve. Along with a button to press.

It was a fairly simple application.

He then went around the classroom and entered everyone into the database.

This was all inscribed into a golden disk. After he said he was done. He went to the teacher and explained how it worked.

The teacher activated it and then smiled.

"You failed!"

John was confused...How did he mess up?

"You did excellent in using what you learned. But did you forget. The variables will get reset when someone else activates the program. It starts over. What is the point of a database that resets every time you turn it on?"

"I see... so I have to quit the class?"

"No. You get three attempts. Redo it."

John went back to his desk and made some modifications.

He searched through the internal logic for a solution and he found a built in function that could help!

var database =[];

if(runicLibrary.localStorage.getItem("database")){

database = runicLibrary.localStorage.getItem("database");

}

var placeholder ={};

var storeData = function(){

placeholder.name = prompt("Enter name into database!");

placeholder.cultivation = prompt("Enter cultivation into database.");

database.push(runicLibrary.stringify(placeholder));

runicLibrary.localStorage.setItem("database", database);

};

var retrieveData = function(name){

for(var i=0; i

if(runicLibrary.parse(database[i]).name==name){

log("Name: "+name+", Cultivation: "+runicLibrary.parse(database[i]).cultivation);

alert("Cultivation of "+name+" is "+runicLibrary.parse(database[i]).cultivation);

}

}

};

John watched as people went up to the teacher and then failed.

He made his way back up and handed his disk to the teacher.

The teacher smiled.

"You pass!"

The other students were in shock.

Soon he had people gathering around him.

"How did you manage to carry the array over?"

John didn't hide what he did.

John explained what he did and the lights in the eyes of everyone seemed to have recovered from their loss.

"I see!"

"That's genius! Wait... the teacher never talked about this function. How did you know about it?"

John explained how he just looked through the internal logic.

Everyone was surprised at this.

"You can understand that nonsense? It's just a whole bunch of unreadable logic though..."

John spoke:

"It is hard to understand for sure, but the keywords are still there."

The teacher had been listening to the conversation.

"Wait! You got that solution from the internal logic? Oh shit. I forgot to teach the key needed for this test... no wonder everyone had the same issue. My bad guys..."

"..."

Everyone was speechless.

Their teacher had screwed up!

The teachers eyes lit up.

"Did you really learn it from the runic library!?"

"Yes?"