Pages: « 1 2
  Print  
Author Topic: Encryption  (Read 3988 times)
Offline (Male) Josh @ Dreamland
Reply #15 Posted on: March 04, 2010, 06:07:50 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
Hmmmm... ENIGMA would be great for server side code if the graphics system could be disabled as easily as I intend...
Code to implement the framework for a set of simple checks could be integrated into the parser or something, but I'm not making any promises until I have a plan for such. Doesn't help that I hate coding online things.
« Last Edit: March 04, 2010, 07:19:07 PM by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Rusky
Reply #16 Posted on: March 04, 2010, 07:16:08 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
That makes no sense. It's input validation- the parser has no clue what to check for. What would be useful is a library of helper functions like inRange (more complicated than that but you get the idea).
Logged
Offline (Male) Josh @ Dreamland
Reply #17 Posted on: March 04, 2010, 07:20:40 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
I could have worded that better. - fix'd

I meant that it could do such things as find locations where given variables are modified. The conditions of the set could then be relayed to the server-side module. That could of course be spoofed, but it'd be a step.

I think a more comprehensive idea would be to have submit the locations of certain key objects along with any changes; the server would allow a small tolerance accounted for by lag. No one likes missing a shot because the server and client disagree on a location.

So, a function could be defined for call when a certain variable is set or action is performed requesting a double check on locations and allowing the server to double check the math.

Frankly, I'm not sure how convenient such an idea would be, hence my not promoting it or "making any promises."
« Last Edit: March 04, 2010, 07:24:17 PM by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Rusky
Reply #18 Posted on: March 05, 2010, 10:43:28 AM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
Basically, that'd be adding dependent typing to EDL.
Logged
Offline (Male) Josh @ Dreamland
Reply #19 Posted on: March 05, 2010, 03:26:50 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
The only way that could have anything to do with typing is if I made a class that did the checks on operator=, which wasn't what I was suggesting.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Female) serprex
Reply #20 Posted on: March 05, 2010, 06:39:35 PM
Smooth ER
Developer
Joined: Apr 2008
Posts: 106

View Profile WWW
It's funny when people think they're introducing some advanced concept, and so they include a wiki link
It's also funny when people forget the magic of hashing
Logged
Offline (Male) Rusky
Reply #21 Posted on: March 05, 2010, 11:05:15 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
It would be static analysis attaching constraints to certain values. You'd basically be extending their types. For example, the type of a variable in a certain context would be "int between 3 and 5," rather than just "int". I posted the wiki link to prevent this exact situation, serp. Not to look super-smart.
Logged
Offline (Male) Josh @ Dreamland
Reply #22 Posted on: March 05, 2010, 11:08:46 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
That's a tad more specific than what I was describing. It'd also require a lot of template instantiations.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Unknown gender) Micah
Reply #23 Posted on: March 06, 2010, 01:23:59 PM

Resident Troll
Joined: May 2008
Posts: 129

View Profile
The only way that could have anything to do with typing is if I made a class that did the checks on operator=, which wasn't what I was suggesting.
Really? You honestly think that operator= is the only time types are checked?

Arguments to functions have types, you know...

Also, serp, he posted a wiki link so that if Josh wanted to implement this, he'd pattern it after stuff that works, not badly reinvent it.
Logged
Offline (Male) Josh @ Dreamland
Reply #24 Posted on: March 06, 2010, 02:01:54 PM

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
I don't see why you're distinguishing operator= from any other member function. Operator= (and the implied other assignment operators) would just be the only good reason to use a type for this, as it would prevent me having to parse in a new block of code myself.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Rusky
Reply #25 Posted on: March 06, 2010, 02:34:02 PM

Resident Troll
Joined: Feb 2008
Posts: 955
MSN Messenger - rpjohnst@gmail.com
View Profile WWW Email
That's a tad more specific than what I was describing. It'd also require a lot of template instantiations.
What you described is a form of dependent typing, and it wouldn't require any template instantiations if the parser did it, which would be the right way (templates would generate multiple copies of functions that use the system).

You also said:
The only way that could have anything to do with typing is if I made a class that did the checks on operator=, which wasn't what I was suggesting.
miky was correcting this misunderstanding. It would have to do with types in the way I explained, not by checking in operator=.

The word "type" in "dependent type" does not have to do with C++'s type system. It would be an extension to that type system that does not exist in C++, even if it eventually got implemented using C++ semantics. If you added some kind of constraint checking to help with server-side code, that would be dependent typing.
Logged
Pages: « 1 2
  Print