// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.pqc.crypto.lms;

import org.bouncycastle.crypto.Digest;

class LmsUtils
{
    static void u32str(final int n, final Digest digest) {
        digest.update((byte)(n >>> 24));
        digest.update((byte)(n >>> 16));
        digest.update((byte)(n >>> 8));
        digest.update((byte)n);
    }
    
    static void u16str(final short n, final Digest digest) {
        digest.update((byte)(n >>> 8));
        digest.update((byte)n);
    }
    
    static void byteArray(final byte[] array, final Digest digest) {
        digest.update(array, 0, array.length);
    }
    
    static void byteArray(final byte[] array, final int n, final int n2, final Digest digest) {
        digest.update(array, n, n2);
    }
    
    static int calculateStrength(final LMSParameters lmsParameters) {
        if (lmsParameters == null) {
            throw new NullPointerException("lmsParameters cannot be null");
        }
        final LMSigParameters lmSigParam = lmsParameters.getLMSigParam();
        return (1 << lmSigParam.getH()) * lmSigParam.getM();
    }
}
