Devi crearti una classe che intercetta il popolamento delle celle e in quel preciso momento sostituire il valore con degli asterischi, naturalmente devi costruirti il datagrid a manina ed ereditare la DataGridTextBoxColumn
codice:
Public Class ColoredTextBoxColumn
   Inherits DataGridTextBoxColumn
        Public Sub New()
        End Sub

        Protected Overloads Overrides Sub Paint(ByVal graph As Graphics,ByVal rectbounds As Rectangle, ByVal curmngrSrc As _
CurrencyManager, ByVal RowNumber As Integer, ByVal _
ForeColorBrush As Brush, ByVal BackColorBrush As Brush, _
ByVal AlignmentRight As Boolean)

 Dim o As Object
 o = Me.GetColumnValueAtRow(curmngrSrc, RowNumber)
 If Me.HeaderText = "Colonna che voglio nascondere" Then
            If (Not (o) Is Nothing) Then
            Dim cellValue As String
            cellValue = CType(ObjVal, String).ToString
        ecc...
        ecc... qui va il tuo codice di sostituzione
    
         MyBase.Paint(graph, rectbounds, curmngrSrc, RowNumber, _
            '          BackColorBrush, ForeColorBrush, AlignmentRight)

 end sub 

end class