Barre horizontale de naviagtion

vendredi 25 mars 2011

composant Map pour des statistiques

We’ve spent the last few years developing geographic & data systems for big business , but now we’re back. We want to bring our targetmap.com platform (.net was already taken) to the community to share that knowledge... But, enough of that…let’s get back on track.

http://www.targetmap.com/





lundi 21 mars 2011

Xml And Sql Server

XML path methode

SELECT [usr_stateMachineInfo]
FROM [dbo].[Users]
WHERE [dbo].[Users].usr_id='93'
FOR XML path('root')

XML RAW methode

SELECT usr_id,usr_user_name,[usr_stateMachineInfo]
FROM [dbo].[Users]
FOR XML RAW, ELEMENTS
retourne

93
demo_demo
text






détaille
http://www.programmersheaven.com/2/SQL-server-2005-school-lesson-5

Sécurité : XOR Encryption

    
'''
''' this function used to xor function char by char betwine data and key
'''

'''
'''
'''
'''
Private Shared Function XOREncryption(ByVal data As String, ByVal key As String) As String
Dim inSb As New StringBuilder(data)
Dim outSb As New StringBuilder(data.Length)
Dim c As Integer = 0
Dim key_count As Integer = 0
For i As Integer = 0 To data.Length - 1
c = AscW(inSb(i)) Xor AscW(key(key_count))
outSb.Append(ChrW(c))
If (key_count = key.Length) Then
key_count = 0
End If
Next
Return outSb.ToString()
End Function

Encode text data for XML



'''
''' this function used to encode the unicode and special caratere content in string data
'''

'''
'''
'''
Public Shared Function EncodeForXml(ByVal data As String) As String
Dim doc As New XmlDocument()
Dim node As XmlNode = doc.AppendChild(doc.CreateElement("xml"))
node.InnerText = data
Dim writer As New StringWriter()
Dim xml_writer As New XmlTextWriter(writer)
node.WriteContentTo(xml_writer)
Return writer.ToString()
End Function

Sécurité :Microsoft Web Protection Library

The Microsoft Web Protection Library (WPL) is a set of .NET assemblies which will help you protect your web sites, current, future and past. The WPL includes

AntiXSS
AntiXSS provides a myriad of encoding functions for user input, including HTML, HTML attributes, XML, CSS and JavaScript.
White Lists: AntiXSS differs from the standard .NET framework encoding by using a white list approach. All characters not on the white list will be encoded using the correct rules for the encoding type. Whilst this comes at a performance cost AntiXSS has been written with performance in mind.
Secure Globalization: The web is a global market place, and cross-site scripting is a global issue. An attack can be coded anywhere, and Anti-XSS now protects against XSS attacks coded in dozens of languages.

Security Runtime Engine
The Security Runtime Engine (SRE) provides a wrapper around your existing web sites, ensuring that common attack vectors to not make it to your application. Protection is provided as standard for
Cross Site Scripting
SQL Injection

Sécurité :Le chiffrement de Vigenère

Le chiffrement de Vigenère est un cryptosystème symétrique, ce qui signifie qu'il utilise la même clé pour le chiffrement et le déchiffrement. Le chiffrement de Vigenère ressemble beaucoup au chiffrement de César, à la différence près qu'il utilise une clef plus longue afin de pallier le principal problème du chiffrement de César: le fait qu'une lettre puisse être codée d'une seule façon. Pour cela on utilise un mot clef au lieu d'un simple caractère.
On associe dans un premier temps à chaque lettre un chiffre correspondant.


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Il consiste à coder un texte avec un mot en ajoutant à chacune de ses lettres la lettre d'un autre mot appelé clé. La clé est ajoutée indéfiniment en vis-à-vis avec le texte à chiffrer, puis le code ASCII de chacune des lettres de la clé est ajouté au texte à crypter. Par exemple le texte "rendezvousamidi" avec la clé bonjour sera codé de la manière suivante :

Texte original :

r e n d e z v o u s a m i d i
114 101 110 100 101 122 118 111 117 115 97 109 105 100 105

Clé:

b o n j o u r
98 111 110 106 111 117 114

Texte crypté

r+b e+o n+n d+j e+o z+u v+r o+b u+o s+n a+j m+o i+u d+r i+b
114 + 98 101 + 111 110 + 110 100 + 106 101 + 111 122 + 117 118 + 114 111 + 98 117 + 111 115 + 110 97 + 106 109 + 111 105 + 117 100 + 114 105 + 98

Pour déchiffrer ce message il suffit d'avoir la clé secrète et faire le déchiffrement inverse, à l'aide d'une soustraction.

Bien que ce chiffrement soit beaucoup plus sûr que le chiffrement de César, il peut encore être facilement cassé. En effet, lorsque les messages sont beaucoup plus longs que la clef, il est possible de repérer la longueur de la clef et d'utiliser pour chaque séquence de la longueur de la clef la méthode consistant à calculer la fréquence d'apparition des lettres, permettant de déterminer un à un les caractères de la clef...

Pour éviter ce problème, une solution consiste à utiliser une clef dont la taille est proche de celle du texte afin de rendre impossible une étude statistique du texte crypté. Ce type de système de chiffrement est appelé système à clé jetable. Le problème de ce type de méthode est la longueur de la clé de cryptage (plus le texte à crypter est long, plus la clef doit être volumineuse), qui empêche sa mémorisation et implique une probabilité d'erreur dans la clé beaucoup plus grande (une seule erreur rend le texte indéchiffrable...).

Securité :Le cryptage D.E.S.

Origine :


Le D.E.S. (ou Data Encryption Standard) naît en 1975 suite à une requête d'I.B.M. en 1960 pour son programme de recherche sur le chiffrement informatique. Au début, les spécialistes de la N.S.A. (National Security Agency, le service de sécurité intérieure américain) se cassent les dents dessus donc I.B.M. est contraint de l'utiliser sous une forme plus simple que prévu. L'utilisation du D.E.S. se généralise alors peu à peu dans les administrations américaines. Depuis, le D.E.S. est remis à niveau tous les 5 ans environ pour faire face à la puissance croissante des ordinateurs qui le mettent en péril.



Mécanisme :


Le message, au prélable converti en binaire, est découpé en blocs Bi de 64 bits. La clé K, elle, comporte 56 bits. Pour chaque bloc Bi, on applique l'algorithme* suivant :

1) On effectue une permutation initiale des bits du bloc Bi. On appelle alors G0 et D0 les parties de 32 bits droite et gauche du bloc obtenu.

2) On répète 16 fois la procédure suivante :
Gi = Di-1
Di = Gi-1 XOR f(Di-1 , Ki) (XOR est représenté par + sur le schéma ci-dessous)
où Ki est un bloc de 48 bits de la clé K, et f une fonction composée successivement d'une expansion de bits, d'un XOR, d'une réduction de bits, et d'une permutation de bits.

3) On recompose un bloc B'16 en "recollant" D16 et G16 dans cet ordre.

4) On effectue la permutation inverse de la permutation initiale 1).



Voici un schéma résumant les différentes parties de l'algorithme* :





Le décodage se fait en utilisant la même clé K mais en déroulant l'algorithme dans le sens inverse.



Inconvénients :


Aujourd'hui, le D.E.S. est fortement menacé par les puissances de calcul des ordinateurs. Il n'est en effet pas impossible de balayer la plupart des clés pour casser le code. Un nouveau système, le A.E.S. (Advanced Encryption Standard) est prévu pour le remplacer.

mardi 15 mars 2011

ASP.NET WYSIWYG rich HTML editor

1- asp.net free componet :http://www.freetextbox.com
2-ajaxToolkit componet HtmlEditor :http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/HTMLEditor/HTMLEditor.aspx
3-Javascript componnet WYSIWYG Editor: http://tinymce.moxiecode.com/index.php
4- jhtmlarea   : http://jhtmlarea.codeplex.com/
5- jquery : http://www.webappers.com/2010/09/08/open-source-wysiwyg-html-editor-using-jquery-ui/

  1. avec asp.net n'oublier pas de déactiver la sécurité injection de script par cet tag à la page ValidateRequest="false"