Communication between 2 SDL programs (Security?)

Hi there,
I’m going to implement a multi-window GUI that will be specifically optimized for my
current projects.
I understand that in order to have multiple (independent) windows, you must execute
another instance
of the program and initiate communication between the main and sub windows.

I wonder what is the best way to make 2 SDL applications communicate together, maybe
using
SDL_net? If so, sending the information to localhost or 127.0.0.1 (loopback) could be
intercepted by
some processes (possibly the system and other monitoring programs).

I am extremely concerned about security and I wonder if there is a way to avoid the
obligation of
validating the communication and encrypting sensitive information (ie. the information is
for your eyes
only; only to be displayed on the screen, not even kept in memory). I guess there is no
way, other
than having an SSL connection with the program.

I know I sound paranoid, but being concerned about security is just that. If someone
has an idea,
please tell me and also, anyone know of an SSL library other than OpenSSL or MatrixSSL?

Thanks,

xm

Heya,

the thing about SDL is that due to the license requirements, a user should
be able to modify the SDL library itself that is used with your program, if
they can not, your program violates the license (from what i’ve gathered).

This means they could do many many different techniques to circumvent most
security you put into your code since they can just change the behaviour of
the underlying SDL functions to do whatever they want them to.

just something to think about when considering SDL for any security based
app.

security can be super complex too, for instance if you did SSL communication
to loopback, the SSL key can probably be found somewhere else in memory
pretty easily so they could just crack it like that.

Instead of thinking of trying to make your app 100% airtight (it’s never
gonna be), maybe you should just figure out what caliber of users you are
going to be having on average and code in some protection that will take
care of that majority.

ie. the information is for your eyes
only; only to be displayed on the screen, not even kept in memory

to be displayed, an image/data has to be stored in video memory while being
displayed and probably resides or did reside in regular RAM as well. people
can do screen dumps, redirect their monitor’s output to a vcr where they are
recording data, take pictures and all sorts of other stuff so you are never
going to be able to find a 100% secure way to do what you are trying to do I
think.

you might just wanna do a simple scrambling on the data (xor,add,subtract
and/or bitroll) and be done with it, that will stop the vast majority of
users from doing what you dont want them to (assuming you dont have
crackers, corporations or government agencies trying to crack your stuff)

other than that i dont think there’s a good solution for doing what you
want, cause if the data is unencrypted anywhere on someones computer, that
data is as good as their’s (:> ----- Original Message -----

From: xm@ca.inter.net ()
To:
Sent: Tuesday, August 24, 2004 6:54 PM
Subject: [SDL] Communication between 2 SDL programs (Security?)

Hi there,
I’m going to implement a multi-window GUI that will be specifically
optimized for my
current projects.
I understand that in order to have multiple (independent) windows, you
must execute
another instance
of the program and initiate communication between the main and sub
windows.

I wonder what is the best way to make 2 SDL applications communicate
together, maybe
using
SDL_net? If so, sending the information to localhost or 127.0.0.1
(loopback) could be
intercepted by
some processes (possibly the system and other monitoring programs).

I am extremely concerned about security and I wonder if there is a way
to avoid the
obligation of
validating the communication and encrypting sensitive information (ie. the
information is
for your eyes
only; only to be displayed on the screen, not even kept in memory). I
guess there is no
way, other
than having an SSL connection with the program.

I know I sound paranoid, but being concerned about security is just
that. If someone
has an idea,
please tell me and also, anyone know of an SSL library other than OpenSSL
or MatrixSSL?

Thanks,

xm


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

the thing about SDL is that due to the license requirements, a user should
be able to modify the SDL library itself that is used with your program, if
they can not, your program violates the license (from what i’ve gathered).

I’m confused by what you say here. I checked on Licensing SDL and I read the LGPL
license, they
contradict… (I think, I’m french so I’m not sure)

Quoting ‘Licensing SDL’ from libSDL.org:
“Include the source code for the version of SDL that you link with, as well as the full
source or object
code to your application so that the user can relink your application,”

Important key words are “or object code” which is precompiled code, not human readable but
ready to
be linked with a freshly compiled libSDL.

This means they could do many many different techniques to circumvent most
security you put into your code since they can just change the behaviour of
the underlying SDL functions to do whatever they want them to.

My clients would install the software that I would provide them, they would not use
someone else’s
derivative of my own software.

security can be super complex too, for instance if you did SSL communication
to loopback, the SSL key can probably be found somewhere else in memory
pretty easily so they could just crack it like that.

Yea, that is true… didn’t think about this. I would possibly find a way to make a
cheap cypher then,
with a single encryption/decryption algorythm good for one program.

If someone gets to the point of intercepting the encrypted data, they will still have to
crack it. Only a
good hacker could find a way to decrypt the information quickly, possibly via some sort of
reverse
engineering of my software.

you might just wanna do a simple scrambling on the data (xor,add,subtract
and/or bitroll) and be done with it, that will stop the vast majority of
users from doing what you dont want them to (assuming you dont have
crackers, corporations or government agencies trying to crack your stuff)

Yup, you’re right, I’ll just cypher the data, that should be enough. And of course
communication
between different computers will have stronger security.

other than that i dont think there’s a good solution for doing what you
want, cause if the data is unencrypted anywhere on someones computer, that
data is as good as their’s (:

Fortunately, the way the information is dealt with, makes the unencrypted information only
on an SDL
surface, can be captured by video, yes, but there is nothing I can do about that. That
part is not my
job as a programmer, that’s more like IT administration…

Thanks a lot,

xm

Try pipes or shared memory.

JPOn Tuesday 24 August 2004 10:54 am, xm at ca.inter.net wrote:

I’m going to implement a multi-window GUI that will be specifically
optimized for my current projects.
I understand that in order to have multiple (independent) windows, you must
execute another instance
of the program and initiate communication between the main and sub windows.

I wonder what is the best way to make 2 SDL applications communicate
together,

Try pipes or shared memory.

In linux, I would certainly use shared memory, but is there a way to achieve either of
your suggestions
in a platform independent fashion? (ie. to be used primarily on linux, windows and macosX)

Thanks,

xm

Try pipes or shared memory.

In linux, I would certainly use shared memory, but is there a way to
achieve either of
your suggestions
in a platform independent fashion? (ie. to be used primarily on linux,
windows and macosX)

There are many things wrong with the discussion so far.

First: All current 2 party encryption systems rely on the two parties
being separated. You need keys from both systems to decrypt that
information. This is what SSL does. If both your applications are on
the same system, whether you’re using pipes or sockets (which are just
another kind of pipe really) or shared memory, it will not be difficult
to decrypt this data.

Second: You haven’t been specific about WHO you are trying to prevent
from getting at this data. If you’re trying to prevent the owner of a
computer and your software from getting at the data that’s contained in
it, I’ve got news for you: it can’t be done. Someone, somewhere, some
day, will crack your program. It’s that simple. Perfect example is
DeCSS. Even Windows XP was cracked before it was even available to the
public.

On the other hand if you’re trying to prevent a third party, say,
someone who has never been to my house, from getting at this data when
I’m running your software on my own computer, I have news once again:
if my system has been compromised, and if there is a crack for your
application, a third party will still be able to get at this data.

the thing about SDL is that due to the license requirements, a user
should
be able to modify the SDL library itself that is used with your
program, if
they can not, your program violates the license (from what i’ve
gathered).

This means they could do many many different techniques to circumvent
most
security you put into your code since they can just change the
behaviour of
the underlying SDL functions to do whatever they want them to.

The fact is that no matter how you link your software, someone is going
to be able to crack it. This is largely irrelevant. The convenience of
the SDL library being separated from the object code before a hacker
gets his hands on it really only means anything if the hackers you’re
trying to protect your software from are too inept to separate them for
themselves.

just something to think about when considering SDL for any security
based
app.

This statement doesn’t even make sense. Digital security in today’s
world has nothing to do with OBSCURITY. Case and point: SSL is a
completely OPEN standard, with plenty of OPEN SOURCE implementations;
does that make it less secure? Hell no. Because SSL wasn’t designed to
be only be secure until someone figures out how it worked.On Aug 25, 2004, at 4:18 AM, xm at ca.inter.net wrote:
On Aug 25, 2004, at 2:30 AM, Alan Wolfe wrote:

On Aug 25, 2004, at 3:13 AM, xm at ca.inter.net wrote:

If someone gets to the point of intercepting the encrypted data, they
will still have to
crack it. Only a
good hacker could find a way to decrypt the information quickly,
possibly via some sort of
reverse
engineering of my software.

Bingo!

Listen, clearly what’s going on here is you aren’t experienced enough
to know how to secure this data, or more specifically, what or who it
even needs to be secured from. You clearly aren’t working for a
government agency or a company that wants to share intellectual
property securely, so the only plausible purpose I can see from this
thread so far is that you want to watch videos that are illegal in your
country.

If you’re trying to make money (you did say you had “clients”) trust me
when I say if you do it’s because you ripped people off much the same
way that the following sites do:

http://www.contentpurity.com/cleanintro.htm
http://www.evidence-blaster.com/privacy/entry_netprivacy.aspx
http://smartprotector.com/eraser/?id=gg

? dieu.

http://home.pacbell.net/theposts/SDLMultiWindows-002.zip

This uses message queues in Linux and mail slots in Windows. Don’t know if it
works in OSX since I don’t have a Mac to test on.

HTH,
JeffOn Tuesday 24 August 2004 01:18 pm, xm at ca.inter.net wrote:

Try pipes or shared memory.

In linux, I would certainly use shared memory, but is there a way to
achieve either of your suggestions
in a platform independent fashion? (ie. to be used primarily on linux,
windows and macosX)

Important key words are “or object code” which is precompiled code, not
human readable but
ready to be linked with a freshly compiled libSDL.

yeah truly, but what i meant is for instance if you had critical data stored
in your surfaces, someone could hack up their own sdl lib from source that
would make it so whenever a surface was displayed, it would dump the data
from that surface to a file.

Since the license garauntees that they should be able to relink your app to
sdl, theyd be able to circumvent your security this way.> ----- Original Message -----

From: xm@ca.inter.net ()
To:
Sent: Tuesday, August 24, 2004 8:13 PM
Subject: Re: [SDL] Communication between 2 SDL programs (Security?)

the thing about SDL is that due to the license requirements, a user
should

be able to modify the SDL library itself that is used with your program,
if

they can not, your program violates the license (from what i’ve
gathered).

I’m confused by what you say here. I checked on Licensing SDL and I read
the LGPL
license, they
contradict… (I think, I’m french so I’m not sure)

Quoting ‘Licensing SDL’ from libSDL.org:
“Include the source code for the version of SDL that you link with, as
well as the full
source or object
code to your application so that the user can relink your application,”

Important key words are “or object code” which is precompiled code, not
human readable but
ready to
be linked with a freshly compiled libSDL.

This means they could do many many different techniques to circumvent
most

security you put into your code since they can just change the behaviour
of

the underlying SDL functions to do whatever they want them to.

My clients would install the software that I would provide them, they
would not use
someone else’s
derivative of my own software.

security can be super complex too, for instance if you did SSL
communication

to loopback, the SSL key can probably be found somewhere else in memory
pretty easily so they could just crack it like that.

Yea, that is true… didn’t think about this. I would possibly find a
way to make a
cheap cypher then,
with a single encryption/decryption algorythm good for one program.

If someone gets to the point of intercepting the encrypted data, they will
still have to
crack it. Only a
good hacker could find a way to decrypt the information quickly, possibly
via some sort of
reverse
engineering of my software.

you might just wanna do a simple scrambling on the data
(xor,add,subtract

and/or bitroll) and be done with it, that will stop the vast majority of
users from doing what you dont want them to (assuming you dont have
crackers, corporations or government agencies trying to crack your
stuff)

Yup, you’re right, I’ll just cypher the data, that should be enough. And
of course
communication
between different computers will have stronger security.

other than that i dont think there’s a good solution for doing what you
want, cause if the data is unencrypted anywhere on someones computer,
that

data is as good as their’s (:

Fortunately, the way the information is dealt with, makes the unencrypted
information only
on an SDL
surface, can be captured by video, yes, but there is nothing I can do
about that. That
part is not my
job as a programmer, that’s more like IT administration…

Thanks a lot,

xm


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

Let’s try to make this post constructive for a second…

Second: You haven’t been specific about WHO you are trying to prevent
from getting at this data. If you’re trying to prevent the owner of a
computer and your software from getting at the data that’s contained in
it, I’ve got news for you: it can’t be done. Someone, somewhere, some
day, will crack your program. It’s that simple. Perfect example is
DeCSS. Even Windows XP was cracked before it was even available to the
public.

There’s no target in particular, I’m just interested in security, I understand that some
company (that
might become my client) will want more security, and that’s why, before even starting my
work that I
read a lot of information and discusses what is not yet written or what I haven’t found
yet to read.

On the other hand if you’re trying to prevent a third party, say,
someone who has never been to my house, from getting at this data when

If the computer is compromised, there is not much I can do. If for example, the computer
contained
encrypted credit card numbers, we must consider the CC numbers compromised. I understand
this.
This is not exactly my concern in this post.

What I just want to avoid is someone having a simple sniffer and being able to intercept
easily
decrypted information. Since we are talking about “communication”, I’m not even
discussing how
information is stored, or displayed or processed, just the communication of the
information, from a
program to another within the same computer.

Listen, clearly what’s going on here is you aren’t experienced enough
to know how to secure this data, or more specifically, what or who it
even needs to be secured from. You clearly aren’t working for a
government agency or a company that wants to share intellectual
property securely, so the only plausible purpose I can see from this
thread so far is that you want to watch videos that are illegal in your
country.

You are making a thousand-brick-assumption here, for a fact I live in Montreal, Quebec,
Canada and
except for difamous videos (or artwork) and child pornography, I don’t know anything that
is not
allowed to be viewed. And as for child pornography, well, I’m only 22 so why would I be
interested in
the younger, I got plenty of premium choice of my age! :wink:

And I may not be experienced enough, that’s true, I will probably never will, if I ever
was experienced
enough I wouldn’t post here.

If you’re trying to make money (you did say you had “clients”) trust me
when I say if you do it’s because you ripped people off much the same
way that the following sites do:

Another nuclear-powered-assumption here, when I work for a client I do what they want;
usually they
come to me because they have a need and they ask me to design a solution to that need. I
don’t sell
products. I don’t work with illegal stuff, I’m very concerned about lisences and in any
case, the
information I’m discussing is not harmful to any laws by itself and as of now, I (and all
of us in this
mailing list) have the right to the information.–

I realize it wasn’t a very constructive answer here… but at least I discussed about the
main idea a
little more, and that may help other understand my questions. I hope.

xm

xm at ca.inter.net wrote:

There’s no target in particular, I’m just interested in security, I understand that some
company (that
might become my client) will want more security, and that’s why, before even starting my
work that I
read a lot of information and discusses what is not yet written or what I haven’t found
yet to read.

First of all, don’t use the widescreen edition of your mail client in
the public or someone might get a neck sprain. Second, security is
completely off-topic on this mailing list. Incidently some people on
this list might be security experts but most of them probably aren’t.
Would you ask a security mailing list about to do something with SDL?
I hope your answer would be a no.

allowed to be viewed. And as for child pornography, well, I’m only 22 so why would I be
interested in
the younger, I got plenty of premium choice of my age! :wink:

Switch your brain on and watch your words before you post. You might not
care what I read into your statement above but I’m sure you’d care about
the prosecutor’s opinion.–
Christian
-------------- next part --------------
A non-text attachment was scrubbed…
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20040826/deab004e/attachment.pgp

You might want to check out http://www.gameprogrammer.com for a mailing list
where game programming and security are on topic (:> ----- Original Message -----

From: christianbiere@gmx.de (Christian Biere)
To:
Sent: Wednesday, August 25, 2004 6:13 PM
Subject: Re: [SDL] Communication between 2 SDL programs (Security?)


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

You can ask people to wrap their mail properly, and suggest that
something is off-topic, without being overtly rude and condescending.On Thu, Aug 26, 2004 at 03:13:29AM +0200, Christian Biere wrote:

First of all, don’t use the widescreen edition of your mail client in
the public or someone might get a neck sprain. Second, security is
completely off-topic on this mailing list. Incidently some people on
this list might be security experts but most of them probably aren’t.
Would you ask a security mailing list about to do something with SDL?
I hope your answer would be a no.


Glenn Maynard

This email has been excerpted out of order, sorry, but it suits my
flaming more to take them in the order that I have.

On the other hand if you’re trying to prevent a third party, say,
someone who has never been to my house, from getting at this data when

If the computer is compromised, there is not much I can do.

Wrong. Your own words, in fact, state that you are trying to prevent a
user of your software from getting at the data its securing. A hacker
to a compromised machine is just that - a user. The fact is that if you
in did successfully build a secure system for displaying encrypted
videos or images without the user of the system being able to retrieve
that data with anything but his eyes or a camera, it would, IMHO,
require special hardware. In that case, short of physically modifying
the machine, no user nor hacker could get at that data. Your statement
is therefore wrong, a compromised machine with special
security-oriented cryptographic hardware could still secure data from
any user or hacker as long as they weren’t able to actually remove your
special hardware and do some really hardcore reverse engineering that
would require resources and skill-sets perhaps belonging only to
anti-terrorist organizations (but even then, no terrorist organization
to date has used cryptography sophistication of that caliber, and so
it’s quite possible that no one on Earth has the ability to reverse
engineer a piece of computer hardware if you built it with proper
fail-safe mechanisms.

If for example, the computer contained encrypted credit card numbers,
we must
consider the CC numbers compromised. I understand this. This is not
exactly
my concern in this post.

What I just want to avoid is someone having a simple sniffer and being
able to
intercept easily decrypted information. Since we are talking about
"communication", I’m not even discussing how information is stored, or
displayed
or processed, just the communication of the information, from a
program to another
within the same computer.

This, again, completely depends on the things you haven’t mentioned yet

  • your target audience and intended use - which will tell us who is
    likely to want to get this secure data - which will tell us who you
    want to protect this data from. Let’s talk about free lance
    programming. (This is going to excerpt this email a bit out of order so
    bare with me.)

If you’re trying to make money (you did say you had “clients”) trust
me
when I say if you do it’s because you ripped people off much the same
way that the following sites do:

Another nuclear-powered-assumption here, when I work for a client I do
what they want;
usually they come to me because they have a need and they ask me to
design a solution
to that need. I don’t sell products. I don’t work with illegal stuff,
I’m very
concerned about lisences and in any case, the information I’m
discussing is not harmful
to any laws by itself and as of now, I (and all of us in this mailing
list) have the
right to the information.

Hypothetical scenario 1: A government agency or a big intellectual
property corporation with a legitimate reason for software that would
allow people in their organization to securely view media without
allowing the owner or another user of the computer to see that media,
wants this kind of software to protect their secrets. Surely they’d go
to a nobody freelance programmer from Montr?al and ask him to make it,
right? I think not.

Hypothetical scenario 2: An ordinary citizen wants this kind of
software with no legitimate reason. I bet he’d go to a big software
company that was actually capable of creating this sort of product and
pay the tens or hundreds of thousands of dollars that this kind of
product would actually be worth. Wait, no, he’d go to a freelance
programmer.

Hypothetical scenario 3: Terrorists. Not legitimate. Not illegitimate.
Not cheap. But not exactly throwing money around either. They might go
to a freelance programmer, but let’s face it, not you.

Now let’s jump forward to the next thing you said, because it relates
quite well to the next thing I’m gonna say:

Listen, clearly what’s going on here is you aren’t experienced enough
to know how to secure this data, or more specifically, what or who it
even needs to be secured from. You clearly aren’t working for a
government agency or a company that wants to share intellectual
property securely, so the only plausible purpose I can see from this
thread so far is that you want to watch videos that are illegal in
your
country.

You are making a thousand-brick-assumption here, for a fact I live in
Montreal, Quebec,
Canada and except for difamous videos (or artwork) and child
pornography, I don’t know
anything that is not allowed to be viewed. And as for child
pornography, well, I’m only
22 so why would I be interested in the younger, I got plenty of
premium choice of my age!
:wink:

Wouldn’t you know it? The exact thing you guessed is the exact thing I
had in mind! DEVIANT PORN DUMBASS. That is the ONLY illegitimate
reason for wanting this kind of software.

Finally, the last legitimate comment will be about this, which was
originally at the beginning of XM’s email.

Let’s try to make this post constructive for a second…

Second: You haven’t been specific about WHO you are trying to prevent
from getting at this data. If you’re trying to prevent the owner of a
computer and your software from getting at the data that’s contained
in
it, I’ve got news for you: it can’t be done. Someone, somewhere, some
day, will crack your program. It’s that simple. Perfect example is
DeCSS. Even Windows XP was cracked before it was even available to the
public.

There’s no target in particular, I’m just interested in security, I
understand that some
company (that might become my client) will want more security, and
that’s why, before
even starting my work that I read a lot of information and discusses
what is not yet
written or what I haven’t found yet to read.

Hate to burst your bubble, but that is REALLY IMPORTANT. As I’ve
already pointed out, the measures you have to take are EXTREMELY
DIFFERENT when trying to protect, say, your child porn from your wife,
than, say, trying to protect pre-patent million-dollar ideas from
industrial espionage. This is once again, a steaming pile of evidence
that you are out of touch with the application of security / privacy
software, statements like “There’s no target in particular, I’m just
interested in security” are sure to win you a gold medal in the dumbass
olympics.On Aug 25, 2004, at 8:50 PM, xm at ca.inter.net wrote:


With the real discussion out of the way for now, why don’t I point out
all the irrelevant mistakes you made! Note to bystanders: if you don’t
enjoy the maddox.xmission.net, you probably won’t like this; it is
because some people really hate flamewars that I have saved these
comments for the end of the email so you can easily ignore them.
Though, let’s be honest, a lot of flaming has already been included.
Sorry.

Let’s begin with your response to my “nuclear-powered-assumption.”

So you write software “to order,” that doesn’t mean you don’t make
money, it doesn’t mean you’re not ripping them off, it doesn’t mean you
don’t make anything illegal, and it doesn’t mean (though this I suppose
may be a language problem) that you don’t sell “products.” Everything
you said here is entirely irrelevant.


Now onto the “thousand-brick-assumption.”

First of all, thanks for telling me where Montr?al is, really I’m a
backwoods hick who only knows that I live in the USA and Iraq is across
the ocean somewhere.

Secondly, and perhaps, worst of all your idiotic remarks… no, you
know what? You’re right. Nobody on Earth (especially on The Internet)
is into deviant sex because, as you so aptly put it, they got plenty of
premium choice having normal sex, right? Now, I don’t condone a lot of
the deviant sex out there, but I don’t walk around thinking that every
other man on the planet gets off on big boobs and thin torsos JUST
BECAUSE I DO. I seriously recommend diversifying yourself, there is
clearly something not working in your head if you still cling THAT
TIGHTLY to the toddler-age notion that all others think as you do.


I realize it wasn’t a very constructive answer here… but at least I
discussed about the
main idea a little more, and that may help other understand my
questions. I hope.

Don’t white wash over your anger, you tried doing exactly what I did,
and that was to prove the guy who offended you wrong in the most
embarrassing, and insulting way possible. You aren’t the first to try
and pretend you’re a more dignified pacifist only moments after trying
to nail the other guy to a wall (not to mention moments BEFORE said
nailing if you include your BS about "let’s try to make this post
constructive.) Sorry, but I don’t buy it - I’ve watched way too much
Elimidate? to fall for that. People like to yell at each other, some
are just better at it than others (of course, it helps to be right.)

The End

xm
cool real name buddy

yeah truly, but what i meant is for instance if you had critical data stored
in your surfaces, someone could hack up their own sdl lib from source that
would make it so whenever a surface was displayed, it would dump the data
from that surface to a file.

Since the license garauntees that they should be able to relink your app to
sdl, theyd be able to circumvent your security this way.

Well, that would meen that someone would have to make changes within the computer either
remotely
or in front of it, and this falls outside the scope of what I can ever do. If the
information is very
sensitive, then the client using such program should have a network adminstrator capable
of securing
the network and should have an alarm system or other devices to stop an intruder to do
anything with
the computer. That is not my job.

But, thanks I did not think about just changing the SDL lib itself to hack a program…
Actually, any
dynamic libraries are subject to that kind of security flaw…

Thanks,

xm

You might want to check out http://www.gameprogrammer.com for a mailing list
where game programming and security are on topic (:

Certainly, I will check it out, anything related to security interests me! Even if I’m
not developing a
game, there is definately something in there for my own application.

Thanks,

xm

yeah truly, but what i meant is for instance if you had critical data
stored
in your surfaces, someone could hack up their own sdl lib from source
that
would make it so whenever a surface was displayed, it would dump the
data
from that surface to a file.

Since the license garauntees that they should be able to relink your
app to
sdl, theyd be able to circumvent your security this way.

Well, that would meen that someone would have to make changes within
the computer
either remotely or in front of it, and this falls outside the scope of
what I can
ever do.

If the information is very sensitive, then the client using such
program should
have a network adminstrator capable of securing the network and should
have an
alarm system or other devices to stop an intruder to do anything with
the computer.
That is not my job.

But, thanks I did not think about just changing the SDL lib itself to
hack a program…
Actually, any dynamic libraries are subject to that kind of security
flaw…

I can’t believe what you’re saying. It’s so ridiculous! It’s just not
logical thought at all!

Possibility #1: You want to create an application that uses encryption
to prevent even the operating system kernel from getting at that
information, it will require special hardware.

Possibility #2: You want to create an application that just secures
data on a SECURE SYSTEM on a SECURE NETWORK (see your second paragraph)
then this really isn’t any different than using ORDINARY ENCRYPTION.
You download the encrypted file, you decrypt it (on your secure
system,) and you view it (on your secure system.) There! Security!

What other possibilities are there? You clearly aren’t doing either one
of these because one of them already exists and the other is largely a
matter of hardware.On Aug 28, 2004, at 8:15 PM, xm at ca.inter.net wrote:


That isn’t the only contradiction of logic going on here (though
admittedly, this is somewhat related to the above contradiction.)

Possibility #1: You are trying to create software that a client can
download onto any public terminal and view encrypted documents with an
expectation of security based on whether or not the system can be
trusted.

Possibility #2: You are trying to create software that a client can run
on machines he already trusts, which means he can just use ORDINARY
ENCRYPTION. As before, you download the encrypted file, you decrypt it
(on a trusted machine,) and you view it (on a trusted machine.)

Again, in paragraph #2, you forfeit your claim to protect data on an
UNTRUSTED MACHINE. What use is your software then? On a TRUSTED MACHINE
people already have a great deal of security using modern encryption.


These were a bit redundant - but I can’t believe I didn’t get my point
through already in previous emails! Call a doctor! There’s something
wrong with you!


Paragraph 3 is total bullshit too! Dynamically linked libraries AREN’T
a SECURITY FLAW! Any hacker of ANY ABILITY WHATSOEVER will NOT have
been saved a great deal of time nor effort because the function names
have been spelled out for him - this only helps a SCRIPT KIDDIE. Again
I say!- if you think you’re offering your “clients” ANY SECURITY AT ALL
by basically saying to all the script kiddies out there “Look, my
software is a bit too hard for you to crack now, but some time soon a
good hacker will crack it and post his programs for doing so on the
internet in windows executable form for you so you don’t have to strain
yourself,” you’ve got another thing coming.

When I was in highschool for my LTP (long-term project) I wrote an
encryption demonstration that discussed the history of cryptography and
its practical applications, and showed the exact inner workings of a
few really simple obfuscation algorithms (XOR comes to mind, but my
algorithms weren’t THAT simple.) It was great for a highschool project,
and most script kiddies probably wouldn’t have been able to crack them

  • BUT IF I SOLD IT TO SOMEONE SAYING IT WAS A SECURE WAY TO ENCRYPT
    THEIR DATA IT WOULD BE A BALD-FACED LIE.

Thanks,

xm


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl