Hi Christoph,

1st off thank you very much for taking the time to reply back to my very 
dimwitted questions. So I've done some reading and I have a better idea of PGP 
and encryption. So just to reiterate them, PGP is more like a combination of 
more basic encryption methods pieced together methodically. Bouncy's API 
provides implementations for this various basic encryption methods like RSA.. 
and Bouncy's implementation of PGP is probably based of other basic classes as 
well. That said some interesting questions came to mind.. A big reason I plan 
to use bouncy's api or the c# version at least, is cause I'm developing this 
API for the Unity3d game engine which uses c# as one of its scripting 
languages. Anyways how much of the original API can I safely trim down/omit so 
that I can get a dll streamlined for PGP only. And another random idea that 
came to mind was .net's System.Security.Cryptography  also supports some basic 
encryption methods is it possible to string these together to get something 
similar to PGP..

Thanks again,
Zaid

On Sep 19, 2012, at 4:12 PM, Christoph Hannebauer wrote:

> Hi Zaid,
> 
> you should probably start reading about encryption in general. From your 
> description, I am uncertain whether you know the difference between Symmetric 
> and Asymmetric Cryptography. The Wikipedia is a good start: 
> <http://en.wikipedia.org/wiki/Cryptography#Modern_cryptography>. You do not 
> have to know the math behind cryptography if you just want to use 
> cryptography, but you should know the use cases of the different technologies.
> 
> Once you have got an overview, you should find out, how PGP implements 
> Cryptography. I believe you should not start programming right away, instead 
> you should play around with GPG or the like. Encrypt and decrypt some files, 
> change the password on your PGP key, export keys and import them on another 
> machine or into another keyring. You can find details about the PGP protocol 
> in RFC 4880.
> 
> After you know how to use GPG, it will be less difficult to understand the 
> Bouncy Castle Crypto API :-).
> 
> There is another popular cryptography protocol, defined by standards X.509, 
> PKIX, S/MIME and PKCS. Maybe these are an alternative to PGP. Bouncy Castle 
> supports both, but I think X.509 has better support in general. Java and C# 
> offer native methods to process those and most operating systems have some 
> kind of support for X.509. X.509 is also used for TLS (e.g. HTTPS). PGP is 
> probably sufficient to achive your goal, though, so this is for bonus ;-).
> 
> 
> Good luck and best wishes,
> 
> Christoph
> 
> On 19.09.2012 02:30, Muhd Zaid wrote:
>> Hi,
>> 
>> I'm relatively new to encryption and quite frankly I'm lost. Let me try to 
>> explain my use case properly..
>> 
>> I need an API that can run both on the client side and the server side. It 
>> needs to be able to send 128 bit PGP encrypted xml files to and from the 
>> game client and the game server.
>> I've considered looking at the c# implementation of bouncy castle's API 
>> since it could easily allow me to make an api that could run as a plugin 
>> in-game as well as a standalone program server side.
>> However its sheer size and the lack of good documentation have put me at a 
>> loss.
>> 
>> I’ve been following examples from this site 
>> http://ledwith.org/2009/08/pgp-decryption-with-c/ but I keep getting the 
>> exception “can’t find signing key in key ring”. I’m generating my keys with 
>> gpgtools a
>> gnuPG implementation for mac. Quite frankly I don’t know where to start to 
>> isolate the problem.
>>  
>> As this is my 1st task as a junior programmer at my company, ideally I would 
>> like to be able to roll out my own solution for this API but bouncy’s API is 
>> so huge and add to the fact I have no encryption experience or background 
>> I’m at a loss. I’d be nice if anyone could also highlight the classes that I 
>> need to zoom in for use...
>>  
>> A little background about myself, I’m CS bachelor but I majored in game 
>> development so I know how to code, I’m just lost with how to approach this 
>> problem and use bouncy’s API for PGP. 
>> 
>> Thanks in advance,
>> Zaid
> 
> 

Reply via email to