---
title: VZMacMachineIdentifier
framework: virtualization
role: symbol
role_heading: Class
path: virtualization/vzmacmachineidentifier
---

# VZMacMachineIdentifier

A unique identifier for a VM.

## Declaration

```swift
class VZMacMachineIdentifier
```

## Overview

Overview This value uniquely identifies a virtual Mac hardware instance. Two VMs running concurrently shouldn’t use the same identifier. When serializing the VM to disk, you can preserve the identifier in a binary representation by serializing the data in the VZMacMachineIdentifier.dataRepresentation property. Conversely, you can recreate the identifier with init(dataRepresentation:) from the binary representation. You can compare the contents of two identifiers with isEqual(to:).

## Topics

### Creating a machine identifier

- [init(dataRepresentation:)](virtualization/vzmacmachineidentifier/init(datarepresentation:).md)
- [init()](virtualization/vzmacmachineidentifier/init().md)

### Machine data representation

- [dataRepresentation](virtualization/vzmacmachineidentifier/datarepresentation.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Platform components

- [VZVirtualMachineConfiguration](virtualization/vzvirtualmachineconfiguration.md)
- [VZMacOSVirtualMachineStartOptions](virtualization/vzmacosvirtualmachinestartoptions.md)
- [VZMacPlatformConfiguration](virtualization/vzmacplatformconfiguration.md)
- [VZPlatformConfiguration](virtualization/vzplatformconfiguration.md)
- [VZMacHardwareModel](virtualization/vzmachardwaremodel.md)
- [VZMacAuxiliaryStorage](virtualization/vzmacauxiliarystorage.md)
