Hash256 - skript- och diagramfunktion
Hash256() returnerar ett 256-bitars hashvärde av de kombinerade indatauttrycksvärdena. Resulterar i en 43-teckensträng. Hashvärden är användbara för att maskera personliga identitetsuppgifter (PII), t.ex. kundnamn, personnummer eller kontonummer.
Syntax:
Hash256(expr{, expression})
Returnerad datatyp: sträng
Argument | Beskrivning |
---|---|
expr | Sträng som ska utvärderas. |
Exempel | Resultat |
---|---|
Hash256( 'abc', 'xyz', '123' ) | Returnerar MA&5]6+3=:>;>G%S<U*S2I:`=X*A.IO*8N\%Y7Q;YEJ |
Hash256( Region, Year, Month ) Note: Region, Year, and Month are table fields. |
Returnerar G7*=6GKPJ(Z+)^KM?<$'AI.)?U$#X2RB[:0ZP=+Z`F: |
Exempel – grunderna i Hash256
Översikt
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
-
En datauppsättning som läses in i en datatabell som heter Example.
-
Följande fält som kommer att användas för att skapa ett 256-bitars hashvärde:
-
Region
-
Year
-
Month
-
Laddningsskript
Example:
Load *
inline [
Region, Year, Month
abc, xyz, 123
EU, 2022, 01
UK, 2022, 02
US, 2022, 02
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
-
Region
-
Year
-
Month
Skapa följande beräknade dimension:
-
=Hash256(Region, Year, Month) för att beräkna 256-bitars hashvärde.
Region | År | Månad | Hash256(Region, Year, Month) |
---|---|---|---|
abc | xyz | 123 | MA&5]6+3=:>;>G%S<U*S2I:`=X*A.IO*8N\%Y7Q;YEJ |
EU | 2022 | 01 | B40^K&[T@!;VB'XR]<5=//_F853?BE6'G&,YH*T'MF) |
UK | 2022 | 02 | O5T;+1?[B&"F&1//MA[MN!T"FWZT=4\#V`M%6_\0C>4 |
US | 2022 | 02 | C6@#]4#_G-(]J7EQY#KRW`@KF+W-0]`[Z8R+#'")=+0 |
För varje rad sammanfogas hashsträngarna för Region, Year och Month och returnerar en sträng med 43 tecken.
Följande kod visar hur du använder funktionen i ett laddningsskript.
Hash_256:
Load *,
Hash256(Region, Year, Month) as Hash256_Region_Year_Month;
Load * inline [
Region, Year, Month
abc, xyz, 123
EU, 2022, 01
UK, 2022, 02
US, 2022, 02 ];
Region | År | Månad | Hash256_Region_Year_Month |
---|---|---|---|
abc | xyz | 123 | MA&5]6+3=:>;>G%S<U*S2I:`=X*A.IO*8N\%Y7Q;YEJ |
EU | 2022 | 01 | B40^K&[T@!;VB'XR]<5=//_F853?BE6'G&,YH*T'MF) |
UK | 2022 | 02 | O5T;+1?[B&"F&1//MA[MN!T"FWZT=4\#V`M%6_\0C>4 |
US | 2022 | 02 | C6@#]4#_G-(]J7EQY#KRW`@KF+W-0]`[Z8R+#'")=+0 |
Exempel – Hash256-scenario med kopior av poster
Översikt
I det här exemplet skapas ett unikt hashvärde för varje produktpost. Hashvärdet fungerar som en unik identifierare, vilket gör att företaget kan upptäcka och hantera kopior på ett effektivt sätt.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
-
En datauppsättning som läses in i en datatabell som heter Example.
-
Följande fält i datatabellen:
-
TransactionID
-
ProductID
-
ProductName
-
SupplierID
-
Laddningsskript
Example:
Load *
inline [
TransactionID, ProductID, ProductName, SupplierID
1, 101, Widget A, S001, 100
2, 102, Widget B, S002, 200
3, 101, Widget A, S001, 50
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
-
Transaction ID
-
ProductID
-
ProductName
-
SupplierID
Skapa följande beräknade dimension:
-
=Hash256(ProductID, ProductName, SupplierID) för att beräkna en nyckel med 43 tecken.
TransactionID | ProductID | ProductName | SupplierID | Hash256(ProductID, ProductName, SupplierID) |
---|---|---|---|---|
1 | 101 | Widget A | S001 | CY`&^(N,E/#`TJT4&]/7N1Q+*T3K=35VDVQ>>;%+A0] |
2 | 102 | Widget B | S002 | O7(1;V1%MG;Z+A[/H)G5&`6RA0(`%6T?YZQ.+>*&\JF |
3 | 101 | Widget A | S001 | CY`&^(N,E/#`TJT4&]/7N1Q+*T3K=35VDVQ>>;%+A0] |
Jämför utdata från Hash256-funktionen. Lägg märke till att den första och tredje posten TransactionID har kopierade hashvärden eftersom kombinationen av strängarna ProductID, ProductName och SupplierID är densamma för dessa rader.
Exempel – Hash256-scenario för att anonymisera data
Översikt
Ett företag inom finansiella tjänster hanterar känsliga kunduppgifter, till exempel kreditkortsnummer, personnummer och kundnamn. För att skydda integriteten och säkerställa efterlevnad av bestämmelser som allmänna dataskyddsförordningen (GDPR) eller lagen om rätt till sjukförsäkring och ersättning (HIPAA) måste de anonymisera känsliga data när de skapar rapporter för analys. Men de måste också vara konsekventa, så att de kan spåra samma kund i olika datauppsättningar utan att avslöja kundens identitet.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
-
En datauppsättning som läses in i en datatabell som heter Example.
-
Följande fält i datatabellen:
-
CustomerID
-
CustomerName
-
SSN
-
Laddningsskript
Example:
Load *
inline [
CustomerID, CustomerName, SSN
101, John Doe, 123-45-6789|
102, Jane Smith, 987-65-4321
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
-
CustomerID
-
CustomerName
-
SSN
Skapa följande beräknade dimensioner:
-
=Hash256(CustomerName)
-
=Hash256(SSN)
CustomerID | CustomerName | SSN | Hash256(CustomerName) | Hash256(SSN) |
---|---|---|---|---|
101 | John Doe | 123-45-6789| | GMD(*B9*!PQ&MTY2@$4A\KCL?[0@T%D@8C#6&UR8/95 | N&[PSH:I$M?OF<5/9LV&N*;`CZ((X'"9Y2FKJC6W04[ |
102 | Jane Smith | 987-65-4321 | EP@9]GSI)5G\I*,B?H,C?A$%VG:SL#6I>Q1:L<0O7UW | HCFXMR'2=\3WF6?_\6LN;.*6:K?Y:%MZ#*PP]WI`YS< |
Datasekretess: känsliga originaldata är inte direkt synliga, men hashvärdet förblir konsekvent mellan olika poster. Detta möjliggör analys, till exempel aggregering av kunders aktiviteter, utan att avslöja kundens faktiska identitet.
Efterlevnad av regler: genom att hasha känsliga fält säkerställer företaget att man följer reglerna för datasekretess.
Säkerhet: hashfunktionen producerar en fastställd storlek på icke-reversibla utdata , vilket ger ett extra skikt av skydd för känsliga data.