Sample code for 30+ languages & platforms
PowerBuilder

DSA Get Key as XML

Gets the DSA key in XML format.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Dsa
integer li_BPublicOnly
string ls_XmlStr

li_Success = 0

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loo_Dsa = create oleobject
li_rc = loo_Dsa.ConnectToNewObject("Chilkat.Dsa")
if li_rc < 0 then
    destroy loo_Dsa
    MessageBox("Error","Connecting to COM object failed")
    return
end if

// Generate a new 2048 bit DSA key.
li_Success = loo_Dsa.GenKey(2048)
if li_Success <> 1 then
    Write-Debug loo_Dsa.LastErrorText
    destroy loo_Dsa
    return
end if

// Get the public key as XML
li_BPublicOnly = 1
ls_XmlStr = loo_Dsa.ToXml(li_BPublicOnly)
Write-Debug ls_XmlStr

// Sample output.

// <DSAKeyValue>
// 	<P>wBYOKu...2eoXw==</P>
// 	<Q>1taJI7...kV2/9c=</Q>
// 	<G>qjfbTi...eB1+g==</G>
// 	<Y>t3tz...NqjsPEg==</Y>
// </DSAKeyValue>

// Get the private key as XML.
li_BPublicOnly = 0
ls_XmlStr = loo_Dsa.ToXml(li_BPublicOnly)

Write-Debug ls_XmlStr

// Sample output.

// <DSAKeyValue>
// 	<P>wBYOKu...2eoXw==</P>
// 	<Q>1taJI7...kV2/9c=</Q>
// 	<G>qjfbTi...eB1+g==</G>
// 	<Y>t3tz...NqjsPEg==</Y>
// 	<X>lm9F...XzuVO+qU=</X>
// </DSAKeyValue>


destroy loo_Dsa