Friday, June 20, 2008


While trying to access the MCP website got this message. I think this is the time for Microsoft to follow the Best Practices which they ask others to follow :)

patterns & practices


Wednesday, June 18, 2008

Top 12 Ruby on Rails Tutorials

Good tutorials to learn Ruby on Rails

Tuesday, June 17, 2008

Passed Exam 70-551
UPGRADE: MCAD Skills to MCPD Web Developer by Using the Microsoft .NET Framework


Yesterday I passed 70-551 exam scoring 760. I was preparing for this paper from last 2 months spending couple of late night hours.

This paper is combination of

MCTS Self-Paced Training Kit (Exam 70-528): Microsoft .NET Framework 2.0 Web-Based Client Development

MCPD Self-Paced Training Kit (Exam 70-547): Designing and Developing Web-Based Applications Using the Microsoft .NET Framework

MCTS Self-Paced Training Kit (Exam 70-536): Microsoft .NET Framework 2.0—Application Development Foundation

Exam is divided into 3 section and totally contains 88 questions and need to score 700 to pass failing in one section will result in failing all sections.

Exam Number
Questions
70-527 (Section 1)
30
70-528 (Section 2)28
70-547 (Section 3)30

This is one of the tough paper to pass and the passing rate is very low more information you can visit

Microsoft Blog


I prepared using microsoft press books on 70-527, 70-528 and 70-547

Feeling Great!!!!!!!!!!!!!

Now i am a MCPD :)

Tuesday, April 15, 2008

Kenyans sings Indian National Anthem

This is a video attempt by leading film makers to change the way we think of other countries. This film, one of four to be shown on Pangea Day, on May 10, “the day the world comes together through film”, is directed by Bob Nyanja.

Can we sing Kenya national anthem?

Monday, April 14, 2008

My Android challenge submission (mFitness / mFit)

mFitness for Android is a simple fitness application designed for
Android platform demonstrating several major concepts of the Android platform.


Saturday, March 15, 2008

My Skydiving


Wednesday, February 27, 2008

Microsoft Virtual Launch Experience (Crashing)



"Experience the launch virtually and access Steve Ballmer’s Keynote, breakout sessions and partners – it’s the next best thing to being there."

I visited the microsoft.com site and followed the link for a virtual experience for the 2008 server launch and landed in a crash site :)










Thursday, March 23, 2006

Crop Circles Check out here

X509Certificate Enveloped Signing XML

Couple of days back I was asked to research on Cryptography in .NET Framework v1.1 to digitally sign a document Here is the code which I developed using VB.NET to sign XML file

*******************************************************************




Dim store As WSE.X509CertificateStore

Dim MyCert As System.Security.Cryptography.X509Certificates.X509Certificate

store = WSE.X509CertificateStore.CurrentUserStore(WSE.X509CertificateStore.MyStore)

store.OpenRead()

For Each cert As X509Certificate In store.Certificates

MyCert = DirectCast(cert, System.Security.Cryptography.X509Certificates.X509Certificate)

Next

store.Close()

' This example signs a file specified by a URI

' using a detached signature. It then verifies

' the signed XML.

'

' The URI to sign.

Dim resourceToSign As String = "#MyObjectId"

' The name of the file to which to save the XML signature.

Dim XmlFileName As String = "C:\xmldsig.xml"

Try

Dim FILE As String = "c:\File.doc"

Dim Key As New RSACryptoServiceProvider

Dim prm As RSAParameters = Key.ExportParameters(True)

' Sign the detached resource and save the signature in an XML file.

SignResource(FILE, resourceToSign, XmlFileName, Key, MyCert)

Key.ImportParameters(prm)

MsgBox(VerifyXmlFile(FILE, XmlFileName, prm))

Catch ex As CryptographicException

Console.WriteLine(ex.Message)

End Try

*******************************************************************

' Sign an XML file and save the signature in a new file.

Public Sub SignResource(ByVal OriginalFile As String, ByVal URIString As String, ByVal XmlSigFileName As String, ByVal Key As RSA, ByVal Certificate As WSE.X509Certificate)

' Create the XmlDocument.

Dim doc As XmlDocument = New XmlDocument

doc.LoadXml("<FileInfo></FileInfo>")

' Add a price element.

Dim newElem As XmlElement = doc.CreateElement("Hash")

'Generate the Hash

newElem.InnerText = GetHash(OriginalFile)

doc.DocumentElement.AppendChild(newElem)

' Create a SignedXml object.

Dim signedXml As New SignedXml(doc)

' Create a data object to hold the data to sign.

Dim dataObject As New DataObject

dataObject.Data = doc.ChildNodes

dataObject.Id = "MyObjectId"

' Add the data object to the signature.

signedXml.AddObject(dataObject)

' Assign the key to the SignedXml object.

signedXml.SigningKey = Key

' Create a reference to be signed.

Dim reference As New Reference

'' Add the passed URI to the reference object.

reference.Uri = URIString

' Add the reference to the SignedXml object.

signedXml.AddReference(reference)

' Create a new KeyInfo object.

Dim keyInfo As New KeyInfo

' Load the certificate into a KeyInfoX509Data object

' and add it to the KeyInfo object.

keyInfo.AddClause(New KeyInfoX509Data(Certificate))

' Add the KeyInfo object to the SignedXml object.

signedXml.KeyInfo = keyInfo

' Compute the signature.

signedXml.ComputeSignature()

' Get the XML representation of the signature and save

' it to an XmlElement object.

Dim xmlDigitalSignature As XmlElement = signedXml.GetXml()

doc.DocumentElement.AppendChild(signedXml.GetXml())

' Save the document to a file and auto-indent the output.

Dim writer As XmlTextWriter = New XmlTextWriter("test.xml", Nothing)

writer.Formatting = Formatting.Indented

doc.Save(writer)

writer.Close()

' Save the signed XML document to a file specified

' using the passed string.

Dim xmltw As New XmlTextWriter(XmlSigFileName, New UTF8Encoding(False))

xmlDigitalSignature.WriteTo(xmltw)

xmltw.Close()

End Sub

*******************************************************************

' Verify the signature of an XML file against an asymetric

' algorithm and return the result.

Public Function VerifyXmlFile(ByVal OriginalFile As String, ByVal Name As [String], ByVal KeyParameter As RSAParameters) As [Boolean]

' Create a new XML document.

Dim xmlDocument As New XmlDocument

' Load the passed XML file into the document.

xmlDocument.Load(Name)

Dim HashElement As XmlElement = CType(xmlDocument.GetElementsByTagName("Hash")(0), XmlElement)

Dim CurrentHash As String = GetHash(OriginalFile)

If HashElement.InnerXml <> CurrentHash Then

Throw New ApplicationException("Signature Failed at Hash level check")

End If

Dim signedXml As New SignedXml(xmlDocument)

Dim nodeList As XmlNodeList = xmlDocument.GetElementsByTagName("Signature")

' Load the signature node.

signedXml.LoadXml(CType(nodeList(0), XmlElement))

Dim Key As New RSACryptoServiceProvider

Key.ImportParameters(KeyParameter)

' Check the signature and return the result.

Return signedXml.CheckSignature(Key)

End Function

*******************************************************************


Public Function GetHash(ByVal File As String) As String

Dim SHAHasher As New System.Security.Cryptography.SHA1Managed

Dim SHAHash() As Byte = SHAHasher.ComputeHash(GetByte(File))

Dim SHAHashString As String = System.Convert.ToBase64String(SHAHash)

Return SHAHashString

End Function



Happy Programming

– S

Wednesday, March 22, 2006

I will start blogging about geek stuff here

Search