در رمزنگاری، یک کد اصالت سنجی پیام یا کد احراز هویت پیام ( به انگلیسی: MAC، کوته نوشت Message authentication code ) عبارتست از تکهٔ کوچکی از اطلاعات که برای اصالت سنجی یک پیام استفاده می شود.
یک الگوریتم MAC - که گاهی تابع درهم ساز رمزنگاری شده نامیده می شود - یک کلید رمز و یک پیام دلخواه را به عنوان ورودی برای اصالت سنجی دریافت می کند و یک MAC را – که گاهی از آن به عنوان برچسب نیز یاد می شود – به عنوان خروجی تحویل می دهد.
مقدار MAC هم زمان از صحت دادهٔ پیام و اصالت آن محافظت می کند. بدین ترتیب که فرد دارای کلید رمز می تواند هرگونه تغییرات را در محتوای پیام تشخیص دهد.
گرچه توابع MAC شبیه به توابع درهم ساز رمزنگاری شده هستند، اما نیازمندی های امنیتی متفاوتی دارند. برای امن تلقی شدن، یک تابع MAC باید در برابر جعل واقعیت زیر حملات متن آشکار انتخاب شده مقاوم باشد. بدین معنا که اگر یک مهاجم کلید رمز را دارد و می تواند MAC را برای متون انتخاب شده تولید کند، اما نتواند بدون انجام حجم غیرقابل دستیابی از محاسبات، MAC را برای پیام های دیگر حدس بزند.
الگوریتم MAC با امضای دیجیتال تفاوت دارد، چرا که مقادیر MAC تولید شده توسط فرستنده و گیرنده تنها با استفاده از یک کلید ایجاد می شود. و این بدان معناست که فرستنده و گیرنده باید پیش از برقرار کردن ارتباط، روی یک کلید یکتا توافق کنند، همان طور که در رمزگذاری متقارن انجام می شود. به همین دلیل، MAC ویژگی عدم انکار را - که توسط امضای دیجیتال برای کلید رمز به اشتراک گذاشته شده در سطح شبکه ارائه می شود، پشتیبانی نمی کند: هر کاربر که بتواند یک MAC را راستی آزمایی کند، می تواند برای دیگر پیام ها نیز MAC تولید کند. در مقابل، یک امضای دیجیتال با استفاده از کلید خصوصی تولید می شود، که رمزگذاری نامتقارن می باشد. از آنجا که به این کلید خصوصی فقط دارندهٔ آن دسترسی دارد، امضای دیجیتال ثابت می کند که یک سند توسط همان دارندهٔ کلید خصوصی امضا شده است؛ بنابراین امضای دیجیتال از ویژگی عدم انکار پشتیبانی می نماید.
عبارت کد صحت پیام ( MIC ) اغلب و مخصوصاً در ارتباطات – جایی که MAC به عنوان سرنام Media Access Control استفاده می شود - به جای MAC به کار برده می شود. گرچه برخی از نویسندگان MIC را با معنایی متفاوت از MAC به کار می برند؛ در استفاده آن ها از عبارت MIC، از کلیدهای رمز استفاده نمی شود. این کمبود بدین معناست که هر MIC مورد نظر برای سنجش صحت پیام باید رمزگذاری شود یا در غیر این صورت در برابر مداخلات محافظت شود. الگوریتم های MIC چنین هستند که اگر یک پیام چندین بار به آن ها داده شود، با فرض استفاده از همان الگوریتم، همواره یک MIC تولید می شود. برعکس، الگوریتم های MAC این گونه طراحی شده اند که برای یک پیام واحد، همان کلید رمز و همان بردار ارزش دهی اولیه، همان الگوریتم MAC یکسان تولید کند.
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلفیک الگوریتم MAC - که گاهی تابع درهم ساز رمزنگاری شده نامیده می شود - یک کلید رمز و یک پیام دلخواه را به عنوان ورودی برای اصالت سنجی دریافت می کند و یک MAC را – که گاهی از آن به عنوان برچسب نیز یاد می شود – به عنوان خروجی تحویل می دهد.
مقدار MAC هم زمان از صحت دادهٔ پیام و اصالت آن محافظت می کند. بدین ترتیب که فرد دارای کلید رمز می تواند هرگونه تغییرات را در محتوای پیام تشخیص دهد.
گرچه توابع MAC شبیه به توابع درهم ساز رمزنگاری شده هستند، اما نیازمندی های امنیتی متفاوتی دارند. برای امن تلقی شدن، یک تابع MAC باید در برابر جعل واقعیت زیر حملات متن آشکار انتخاب شده مقاوم باشد. بدین معنا که اگر یک مهاجم کلید رمز را دارد و می تواند MAC را برای متون انتخاب شده تولید کند، اما نتواند بدون انجام حجم غیرقابل دستیابی از محاسبات، MAC را برای پیام های دیگر حدس بزند.
الگوریتم MAC با امضای دیجیتال تفاوت دارد، چرا که مقادیر MAC تولید شده توسط فرستنده و گیرنده تنها با استفاده از یک کلید ایجاد می شود. و این بدان معناست که فرستنده و گیرنده باید پیش از برقرار کردن ارتباط، روی یک کلید یکتا توافق کنند، همان طور که در رمزگذاری متقارن انجام می شود. به همین دلیل، MAC ویژگی عدم انکار را - که توسط امضای دیجیتال برای کلید رمز به اشتراک گذاشته شده در سطح شبکه ارائه می شود، پشتیبانی نمی کند: هر کاربر که بتواند یک MAC را راستی آزمایی کند، می تواند برای دیگر پیام ها نیز MAC تولید کند. در مقابل، یک امضای دیجیتال با استفاده از کلید خصوصی تولید می شود، که رمزگذاری نامتقارن می باشد. از آنجا که به این کلید خصوصی فقط دارندهٔ آن دسترسی دارد، امضای دیجیتال ثابت می کند که یک سند توسط همان دارندهٔ کلید خصوصی امضا شده است؛ بنابراین امضای دیجیتال از ویژگی عدم انکار پشتیبانی می نماید.
عبارت کد صحت پیام ( MIC ) اغلب و مخصوصاً در ارتباطات – جایی که MAC به عنوان سرنام Media Access Control استفاده می شود - به جای MAC به کار برده می شود. گرچه برخی از نویسندگان MIC را با معنایی متفاوت از MAC به کار می برند؛ در استفاده آن ها از عبارت MIC، از کلیدهای رمز استفاده نمی شود. این کمبود بدین معناست که هر MIC مورد نظر برای سنجش صحت پیام باید رمزگذاری شود یا در غیر این صورت در برابر مداخلات محافظت شود. الگوریتم های MIC چنین هستند که اگر یک پیام چندین بار به آن ها داده شود، با فرض استفاده از همان الگوریتم، همواره یک MIC تولید می شود. برعکس، الگوریتم های MAC این گونه طراحی شده اند که برای یک پیام واحد، همان کلید رمز و همان بردار ارزش دهی اولیه، همان الگوریتم MAC یکسان تولید کند.
wiki: کد اصالت سنجی پیام