From: SANDHYA.JS Date: Thu, 7 Mar 2024 17:38:48 +0000 (+0530) Subject: Coverity-CWE 330: Use of Insufficiently Random Values X-Git-Url: https://osm.etsi.org/gitweb/?a=commitdiff_plain;h=afb9ebdbde72010cb60dc91d605e0b250b4f6cd4;p=osm%2FNG-UI.git Coverity-CWE 330: Use of Insufficiently Random Values - Resolved Cryptographically weak PRNG issue by not using Math.random() in code. Change-Id: I237d90caba67d4b866e910c895b88ef3b292353f Signed-off-by: SANDHYA.JS --- diff --git a/src/services/SharedService.ts b/src/services/SharedService.ts index e8eac94..f3b70fa 100644 --- a/src/services/SharedService.ts +++ b/src/services/SharedService.ts @@ -128,9 +128,13 @@ export class SharedService { // eslint-disable-next-line @typescript-eslint/no-magic-numbers private randomStringLength: number = 4; - /** Max length of Uint8Array */ + /** express number for rgb manipulation */ // eslint-disable-next-line @typescript-eslint/no-magic-numbers - private unit8Array: number = 255; + private colourHour: number = 10; + + /** express number for rgb manipulation*/ + // eslint-disable-next-line @typescript-eslint/no-magic-numbers + private colourMin: number = 5; /** Instance of the rest service @private */ private restService: RestService; @@ -138,10 +142,6 @@ export class SharedService { /** Service holds the router information @private */ private router: Router; - /** Random color string generator length @private */ - // eslint-disable-next-line @typescript-eslint/no-magic-numbers - private colorStringLength: number = 256; - /** Check for the root directory @private */ // eslint-disable-next-line @typescript-eslint/no-magic-numbers private directoryCount: number = 2; @@ -260,10 +260,9 @@ export class SharedService { /** Generate random string @public */ public randomString(): string { - const chars: string = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; let result: string = ''; for (let randomStringRef: number = this.randomStringLength; randomStringRef > 0; --randomStringRef) { - result += chars[Math.floor(Math.random() * chars.length)]; + result += new Date().getSeconds(); } return result; } @@ -425,9 +424,9 @@ export class SharedService { /** Random RGB color code generator @public */ public generateColor(): string { - const x: number = Math.floor(Math.random() * this.colorStringLength); - const y: number = Math.floor(Math.random() * this.colorStringLength); - const z: number = Math.floor(Math.random() * this.colorStringLength); + const x: number = Math.floor((new Date().getHours()) * this.colourHour); + const y: number = Math.floor((new Date().getMinutes()) * this.colourMin); + const z: number = Math.floor((new Date().getSeconds()) * this.colourMin); return 'rgb(' + x + ',' + y + ',' + z + ')'; }