Loris S 9e9c990658
Modify S5542: Learn-As-You-Code migration (#2011)
Co-authored-by: hendrik-buchwald-sonarsource <64110887+hendrik-buchwald-sonarsource@users.noreply.github.com>
2023-06-20 10:27:53 +02:00

80 lines
1.6 KiB
Plaintext

== How to fix it in .NET
=== Code examples
==== Noncompliant code example
include::../../common/fix/aes-noncompliant-example.adoc[]
[source,vbnet,diff-id=1,diff-type=noncompliant]
----
Imports System.Security.Cryptography
Public Module Example
Public Sub Encrypt()
Dim Algorithm As New AesManaged() With {
.KeySize = 128,
.BlockSize = 128,
.Mode = CipherMode.ECB, ' Noncompliant
.Padding = PaddingMode.PKCS7
}
End Sub
End Module
----
include::../../common/fix/rsa-noncompliant-example.adoc[]
[source,vbnet,diff-id=2,diff-type=noncompliant]
----
Imports System.Security.Cryptography
Public Module Example
Public Sub Encrypt()
Dim data(10) As Byte
Dim RsaCsp = New RSACryptoServiceProvider()
RsaCsp.Encrypt(data, False) ' Noncompliant
End Sub
End Module
----
==== Compliant solution
include::../../common/fix/aes-compliant-example.adoc[]
[source,vbnet,diff-id=1,diff-type=compliant]
----
Imports System.Security.Cryptography
Public Module Example
Public Sub Encrypt()
Dim data(10) As Byte
Dim Algorithm As New AesGcm(data)
End Sub
End Module
----
include::../../common/fix/rsa-compliant-example.adoc[]
[source,vbnet,diff-id=2,diff-type=compliant]
----
Imports System.Security.Cryptography
Public Module Example
Public Sub Encrypt()
Dim data(10) As Byte
Dim RsaCsp = New RSACryptoServiceProvider()
RsaCsp.Encrypt(data, True) ' Noncompliant
End Sub
End Module
----
=== How does this work?
include::../../common/fix/fix.adoc[]